面向接口编程的优势

  • 1. 方便程序使用多态

    例如,有方法需要一个集合类型的参数,将参数设置成List类型和设置成ArrayList类型相比,传参不仅是可以传ArrayList类型还可以是LinkedList类型,因此代码使用范围更广。
  • 2. 代码扩展性更强

    如果要扩展一个类中的方法,我们一般可以选择动态代理方式来对某些方法进行增强,但是动态代理的类需要实现接口,这也是面向接口编程的一大优势。
  • 3. 降低了代码间耦合

例如:Computer类有一个IMobileStorage接口类型的成员变量,接口定义write和read方法,移动设备类FlashDisk、MP3Player类实现了IMobileStorage接口,那么计算机类Computer和FlashDisk、MP3Player就能关联成功,但是Computer并不知道自己的成员变量是什么具体类型,这就是所谓的“依赖接口,而不依赖于具体类”。JAVA中两个层面之间通过接口产生联系,此时接口相当于一个缓冲区(因其具体方法不确定),当业务发生改变,只改变实现类的代码即可,不需要改写后续代码,减少对整个项目系统的影响。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,133评论 18 399
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 14,022评论 6 13
  • (一)Java部分 1、列举出JAVA中6个比较常用的包【天威诚信面试题】 【参考答案】 java.lang;ja...
    独云阅读 11,948评论 0 62
  • 一 我叫阎王, 是只王八,生在太湖 和其他人一样 我一辈子只能待在这个湖里,上学,工作,结婚 然后生一堆小王八,他...
    14花生阅读 3,110评论 3 7
  • 小时候,家里很穷…… 在我的记忆里,爹娘面朝黄土背朝天,任劳任怨地守护着那长不了庄稼的黄土地...... 突然有一...
    tiancheng1985阅读 1,832评论 0 0

友情链接更多精彩内容