面向接口编程
**接口表示一种能力** - 体现在接口的方法上
**面向接口编程** - 关心实现类有何能力,而不关心实现细节 - 面向接口的约定而不考虑接口的具体实现 ### 解析: 接口在这里边其实,他仅主要表示一种能力,这种能力主要体现在接口的方法,方法就描述了 接口能够实现的功能,但是呢,他没有任何的实现,这样的话就需要在实现类里面去实现接口中的 方法,完成具体的功能,我们在实际开发的时间经常需要使用,面向接口这种编程思想进行编程, 我们通常在定义接口时只关心实现类有何能力,就是能够做什么,而不关心具体实现,只描述它能 够做什么,面向接口的约定,而不考虑接口的具体实现。 **接口与抽象类的区别** - 相同点 - 都表示抽象特征 - 都不能被实例化 - 不同点 - 接口只能定义抽象方法,抽象类可以有实现方法 - 接口中不能有构造方法,抽象类可以有 - 一个类可以实现多个接口,但只能继承一个抽象类 ### 解析: 接口,我们可以把它理解成是比抽象类更抽象的一种类型,那么他和抽象类之间呢,有很多相似 的部分,第一个相同点,都表示抽象的特征,第二个是都不能够被实例化,不同点呢,接口当中只能 定义抽象方法,抽象类中呢,可以定义抽象方法,也可以定义实例方法,第二个不同点,接口中不能 有构造方法,但抽象类里可以有,第三个,区别不同点,一个类可以实现多个接口,但只能继承一个 抽象类,这是接口和抽象类的区别我们,在面试的时间是经常问到的一个面试问题。 ## 面向接口编程 **案例:实现防盗门功能** - 防盗门是一个门 is a的关系 - 防盗门有一个锁 has a的关系 - 上锁 - 开锁 ### 分析: 接下来我们就采用面向接口编程思想,来,再看一个案例,实现防盗门的功能,防盗门,是一个 门,我们通过is a去判断防盗门是不是门,是,我们就可以实现继承,防盗门,有一个锁,has a关 系就是有没有拥有,那上锁和开锁的能力,我们通过这个类的关系图,可以看到门拥有开和关的能力, 开关接口呢,上锁和开锁,一个实现防盗门,防盗门即继承了门又实现了接口,如何来实现这个功能 呢,首先我们去定义一个类,这个类就是到门,我们定义成抽象类,定义抽象方法必须要加Abstract 接口当中这两个可以省略,抽象内容呢,这两个属性,这两个关键词必须要加上去才表示抽象的行为。
相关文章
- 免费开放接口API
- Java中Map接口的解析
- java public interface_Java 接口interface的基础[通俗易懂]
- 【说站】java抽象类和接口的区别探究
- Typecho实现百度自动提交以及熊掌号自动提交AMP/MIP接口插件
- Postman接口
- 天天都接触的以太网接口,你知道有哪些类型和参数吗?
- php-微信公众号与新浪sae接口代码
- Python 调用Zoomeye搜索接口
- 【Linux 内核 内存管理】memblock 分配器编程接口 ③ ( memblock_remove 函数 | memblock_remove_range 函数 )
- 【Linux 内核 内存管理】memblock 分配器编程接口 ④ ( memblock_alloc 函数 | memblock_alloc_base 函数 )
- 深入理解 抽象类和接口详解编程语言
- [一] java8 函数式编程入门 什么是函数式编程 函数接口概念 流和收集器基本概念详解编程语言
- Linux调用接口int 80的解析(linuxint80)
- PHP 面向对象的特性 抽象类和接口详解编程语言
- Linux编程接口指南(linux编程接口手册)
- 研究Oracle API接口,助推业务发展(oracle api接口)
- PHP中用接口、抽象类、普通基类实现“面向接口编程”与“耦合方法”简述
- 腾讯QQ微博API接口获取微博内容
- PHP面向对象程序设计(oop)学习笔记(一)-抽象类、对象接口、instanceof和契约式编程