区别 | 抽象类 | 接口 |
---|---|---|
关键字 | abstract class | interface |
概念 | 不能实例化的类,可能包含抽象方法 | 抽象方法和静态常量的集合 |
组成 | 抽象方法、普通方法、静态方法、变量、常量、静态变量、构造方法 | 抽象方法、静态常量 |
子类 | 子类继承抽象类 | 实现类实现接口 |
继承或实现关键字 | extends | implements |
局限性 | 单继承,可以多层继承 | 没有限制 |
关系 | 抽象类可以实现接口 | 接口不能继承抽象类 |
应用类 | 父类强制子类完成某些特定的功能,当然父类中也包含了共同的代码 | 约定、规范。 方法的描述,子类必须完成所有的方法 |