例子:电脑的USB接口
接口:1.接口的出现是为了实现扩展
实现接口,实例化抽象方法,实现其他类也可以重写功能
2.接口的出现定义了规则
一定要满足接口的要求
· 3.接口的出现降低了耦合性(事物的紧密性/降低事物的紧密性)(降低耦合性——解耦)
接口的出现,完成了解耦,说明有两方,一方在使用规则,一方在实现规则
【接口和抽象类的区别】
在描述事物时首先考虑是类合适,还是接口合适
因此要明确接口和类的本质区别
例子:描述狗
狗:吼叫/吃饭
警犬:是狗中的一类,具备特殊的功能(缉毒)
『定义缉毒的方式:在警犬这个类中单独定义
但是具有缉毒这个功能的不止警犬还有其他事物(比如什么猪啊老鼠啊之类的)如果他们都在一个程序中那么就会产生代码复用性小
因此采用的方法为将缉毒方法抽象出来』
此时要选择,犬这个事物用什么描述,缉毒有用什么描述
『犬描述为类(抽象类),缉毒描述为接口。缉毒犬继承犬类,实现缉毒这个接口』
选择标准:
1.类是负责描述事物的基本功能
2.接口负责描述事物的扩展功能(这个功能其他事物也可以具备)