首先:继承extends跟接口implement有什么区别?
接口类似于c++里的“多重继承”
extends可以理解为全盘继承了父类的功能 implements可以理解为为这个类附加一些额外的功能 举个例子,Animal是一个父类,cat,dog,bird,insect都extends了Animal, 但是cat,dog,bird还可以implements比如run,shout这些interface,bird,insect可以implements比如fly这些interface
简单说:
1.extends是继承父类,只要那个类不是声明为final或者那个类定义为abstract的就能继承,
2.JAVA中不支持多重继承,但是可以用接口来实现,这样就要用到implements,
3.继承只能继承一个类,但implements可以实现多个接口,用逗号分开就行了 ,
术语话来说:
extends和implements有什么不同?
接口
接口可以理解为一种特殊的类,由全局常量,和公共的抽象方法组成
接口是“类必须要遵守的规范”。它只是规定某些类必须提供某些方法
定义接口不再用class,而用interface
类:单继承的。接口:多继承的
接口定义的变量都是常量,接口中的方法都是抽象方法【自动添加public abstract】
extends在implement前,顺序不能变换。
【你每一年写程序时,对接口的理解都是不一样的】
通过接口,可以描述两个不同类型类之间的特征。