JAVA接口

7 篇文章 0 订阅
7 篇文章 0 订阅
本文讲述了接口在编程中的重要性,包括定义规范以避免命名混乱,实现多态以适应不同场景,促进解耦和代码复用,以及支持易于扩展和多继承。通过队列实现的示例,展示了接口如何隐藏实现细节,简化代码阅读。
摘要由CSDN通过智能技术生成

接口:大致就是定义一个规范,给定一个规范,根据规范去实现具体的逻辑代码。接口只包含常量和方法的定义,而没有变量和方法的实现。


这里不讲接口代码怎么写,随便抄个代码就会写了,这个简单。
接下来,先详谈一下接口的作用,看各位哪个赞同,哪个反对。(当然了,你反对也没什么用,事实就是这样。)

实现多态:一个规范它可能会有很多种实际操作情况。接口也不例外,虽然最后实现的功能都相同,但是底层的代码逻辑是不同的,就比如Java中的队列的实现可以使用循环数组,还可以用链表。这两种实现方式的使用场景不同,循环数组方法效率更好,但是容量有限。链表虽然效率较低,但是它容量理论上是不限制的。这就需要在不同的业务中去根据情况选择实现了,这也就是所谓多态的体现。

定义规范:设想一个完整的业务由多人开发,假设上面的两种实现(循环数组方法和链表方法)由A和B两个程序员来写,程序员A写循环数组实现的时候的添加方法命名为add,程序员B写链表法的实现的时候把添加方法命名成了tianjia。设想一下,这不捣乱么?一样的业务,只是不一样的逻辑,他俩就搞出来这么多含义相同但是名称不同的方法名,这还只是只有两种实现的情况,那要是再多几种实现。用队列的人不得疯了。所以,干脆在开发之前,就用一个接口统一这个添加方法名字就叫add,俩程序员就只需要去填充逻辑就行了,到时候不管调用哪一套逻辑实现,都是调用add方法。这样不是更好么,这就是接口的定义规范作用,在协同开发的时候体现最深刻。

解耦:还是如上面的两种实现,如果有一天业务发生了点变化,你需要去改用另一种逻辑实现,不用接口的话你是不是得把你new之前的代码和之后的代码都改一次。而有了接口以后,我们可以替换掉具体的实现类而无需修改依赖于接口的代码。

易于扩展:还是上面的队列的例子,假设你要给这个队列添加一个返回最大值的方法,如果没有接口,你需要挨个在多种逻辑实现类中添加,难免有忘记的。但是如果有接口,你只需要在接口中添加一个方法,它的实现类中自然会报错,接下来你就可以看着报错在你的代码中去加你的逻辑了。此为易于扩展。

支持多继承:java中类只能单继承,但是接口就可以多继承,一个类实现多个规范,这没毛病。这就好比你可以说一个人有多种规范(道德规范、礼仪规范),但是不能说一个人有好几个爹吧,这样不合适吧,你又不是吕布。java还是很贴近实际生活的。

隐藏实现细节:这个很简单,不给你看实现的那么一大段代码,你瞬间看方法声明就能明白它的功能,要不你还得挨个往下划着看。

  • 10
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值