很多JAVA程序员对于接口存在的意义很疑惑。不知道接口到底是有什么作用,为什么要定义接口。好像定义接口是提前做了个多余的工作。下面我给大家总结了4点关于JAVA中接口存在的意义:

1、重要性:在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力。

2、简单、规范性:如果一个项目比较庞大,那么就需要一个能理清所有业务的架构师来定义一些主要的接口,这些接口不仅告诉开发人员你需要实现那些业务,而且也将命名规范限制住了(防止一些开发人员随便命名导致别的程序员无法看明白)。

3、维护、拓展性:比如你要做一个画板程序,其中里面有一个面板类,主要负责绘画功能,然后你就这样定义了这个类,可是在不久将来,你突然发现这个类满足不了你了,然后你又要重新设计这个类,更糟糕是你可能要放弃这个类,那么其他地方可能有引用他,这样修改起来很麻烦,如果你一开始定义一个接口,把绘制功能放在接口里,然后定义类时实现这个接口,然后你只要用这个接口去引用实现它的类就行了,以后要换的话只不过是引用另一个类而已,这样就达到维护、拓展的方便性。

4、安全、严密性:接口是实现软件松耦合的重要手段,它描叙了系统对外的所有服务,而不涉及任何具体的实现细节。这样就比较安全、严密一些(一般软件服务商考虑的比较多)。

网上的说法1
接口提供了一个公用的方法提供方。 接口是用来规定子类的行为的。
例如, 比如有个需求, 需要保存客户信息, 有些客户从网站来, 有些从手机客户端来, 有些从后台管理系统录入, 假设不同来源的客户有不同的处理业务流程, 这个时候我定义接口来提供一个保存客户的方法, 然后不同平台实现我这个保存客户的接口, 以后保存客户的话, 我只用知道这个接口就可以了, 具体调用哪个方法 去实例化具体你需要用的类,这也就是JAVA的多态的体现。 而如果你不用接口的话 , 首先我需要哪个方法 我就去实例化哪个类, 冗余很高, 其次扩展很差。 接口就是一个规范, 其子类都会有他提供的方法。 统一管理。

网上的说法2
面相接口编程:
1.根据客户提出的需求提出来,作为接口的;业务具体实现是通过实现接口类来完成的。
2.当客户提出新的需求时,只需编写该需求业务逻辑新的实现类。
3.假如采用了这种模式,业务逻辑更加清晰,增强代码可读性,扩展性,可维护性。
4.接口和实现分离,适合团队协作开发。
5.实现松散耦合的系统,便于以后升级,扩展。

由于今天有人问我关于“接口的问题”,因此决定将其总结一下,希望能帮助一些java程序员的困惑。同时,以上有什么不对或不足的地方,还请大虾们指点。

JAVA中接口存在的意义相关推荐

  1. 12 java中instanceof运算符的意义和用法

    java中instanceof运算符的意义和用法 instanceof运算符是用来在运行时指出对象是否是特定类的一个实例.instanceof通过返回一个布尔值来标识该对象是否为特定类或者它的子类的一 ...

  2. Java中接口作用的理解

    关于Java中接口作用的深入理解.这是个很容易遇到的问题吧,看下面红色的部分应该就能理解了.要把接口视作一种共同规范. / 2019/3/1 补充 : 接口的存在也是为了弥补类无法多继承的缺点,假设一 ...

  3. java中接口私有反方_Java 8:在接口中声明私有和受保护的方法

    java中接口私有反方 引入Java 8时,我们可以在接口中使用默认方法. 此功能的主要驱动程序是允许接口扩展,同时保留对旧接口版本的向后兼容性. 一个示例是在现有Collection类中引入stre ...

  4. java中接口文件创建_功能接口简介–在Java 8中重新创建的概念

    java中接口文件创建 世界各地的所有Java开发人员都将至少使用以下接口之一:java.lang.Runnable,java.awt.event.ActionListener,java.util.C ...

  5. Java中接口、抽象类与内部类学习

    2019独角兽企业重金招聘Python工程师标准>>> Java中接口.抽象类与内部类学习 接口与内部类为我们提供了一种将接口与实现分离的更加结构化的方法. 抽象类和抽象方法 抽象方 ...

  6. Java中接口的多继承

    我们知道Java的类只能继承一个类,但可以实现多个接口.但是你知道么?Java中的接口却可以继承多个接口.本文就来说一说Java中接口的多继承. 进入主题之前,先扩展一下.Java为什么只支持单继承呢 ...

  7. [转载] 面试题:说说Java中接口、类、成员变量、成员方法、构造方法有哪些访问修饰符和他们的作用范围

    参考链接: Java中的访问修饰符 * 问题:说说Java中接口.类.成员变量.成员方法.构造方法有哪些访问修饰符和他们的作用范围 * 答:接口的访问修饰符只有public 1个 *    类的访问修 ...

  8. java中接口私有反方_接口中的Java 9私有方法

    java中接口私有反方 Java 9 has been released and there has been a lot of changes. Today we will look into Ja ...

  9. Java中接口的作用,为什么要写接口?

    ** Java中接口的作用 转载于:https://www.zhihu.com/question/20111251 ** **困惑:**例如我定义了一个接口,但是我在继承这个接口的类中还要写接口的实现 ...

最新文章

  1. python del函数_python del函数是什么以及如何使用?
  2. modbus报文解析实例_万字长文!春招面试总结,鹅厂T3Android高频面试真题+解析...
  3. Tomcat 之 tomcat安装和组件介绍
  4. F5 云应用服务促进公共云、私有云及混合云应用部署
  5. Keil左侧显示行数
  6. 卷首寄语:我们的今天,明天--致所有战斗在一线的同行们
  7. 深入理解java SPI机制
  8. SpringMvc和Mybatis整合需要配置的xml
  9. Java 8 中的工厂方法模式
  10. 第十二届蓝桥杯JavaB组省赛H题 杨辉三角形
  11. Xcode 联编系统
  12. 去年五一的大理丽江之行,今年的得在加班中度过了
  13. Atitit vue.js 把ajax数据 绑定到form表单
  14. opnet物联网仿真-编程集锦
  15. 华为手机usb调试打开后自动关闭怎么办?华为手机 usb调试为什么自动关闭?usb调试老是自动关闭怎么回事?...
  16. 深度学习(6): RNN
  17. DP1.2 硬件规范——硬件/Lenovo
  18. 成功在开发板运行vsftpd
  19. 一百行写一个2048
  20. 微信小程序中实现获奖名单滚动播放

热门文章

  1. 免费Linux CAD应用软件
  2. 工作流引擎-协作模式-最后一个人发送选择到达节点与接受人的场景设计与实现...
  3. python:查找兄弟单词
  4. 游戏开发41课 unity 目录分析
  5. 【BZOJ】3698:XWW的难题-上下界网络流
  6. 瓦力发布系统安装部署
  7. 推动“海纳众创”,打造“漫天繁星”:中国联通视频彩铃全国创意创新大赛开赛仪式顺利举行!
  8. 记忆法——《认知天性》
  9. python日历下拉框_c#教程之C#日历样式的下拉式计算器实例讲解
  10. 高新技术企业的认定申请材料有哪些?