当一个抽象类中的方法全是抽象方法,则可以定义为接口
接口中的成员
- 定义变量:变量的固定修饰符(public static final)所以接口中的变量也称之为常量。
- 定义方法:方法的固有修饰符(public abstract )
接口的特点
- 接口不可以创建对象。
- 子类必须覆盖掉接口的所有方法,才可以实例化。
接口最重要的体现
- 解决了多继承的弊端。将多继承的机制在java中通过多实现完成。
接口是如何解决多继承的弊端
多继承的弊端:当多个父类具有相同的功能时,子类调用会产生不确定性。
其核心原因就是在于多继承父类中功能有主体,运行是不确定运行那个主体内容。
- 接口中的功能没有方法体,有子类明确。
接口和抽象类的区别
-
抽象类是描述事物的基本功能,可以定义非抽象的方法。接口中只能定义抽象方法,负责功能的扩展。
-
类与类之间是继承关系(is a)
-
类与接口之间是实现关系(like a)