1,接口与抽象类的辨析
1.1概念辨析
- 当"我是你的一种时",子类继承父类,即代表了类与类之间的关系,该体系的类都应该具备父类的成员。
是is a的关系。 - 当"我应该具备这些功能时",类实现接口,即代表类与功能的关系,将功能的声明与实现分离。并不是该体系内所有类都需要的额外功能。
是like a的关系。
接口是功能的集合,强调功能。
抽象类是一类事务共性功能与属性的集合,强调数据类型本身。
1.2使用辨析
-
类继承类extends,只能单继承
接口继承接口extends可以多继承
类实现接口implements可以多实现
接口不可以继承类! -
抽象类中可以有非抽象方法
接口中全部为抽象方法 -
抽象类具有成员变量
接口没有普通的成员变量 -
抽象类中的成员无固定修饰符
接口中的成员有固定修饰符