abstract class | interface | |
继承 | 只能extends继承一个class | 可以implements多个interface接口并且接口之间直接允许多重extends |
字段 | 可以定义实力字段 | 不能定义实力字段 |
抽象方法 | 可以定义抽象方法 | 可以定义抽象方法 |
非抽象方法 | 可以定义非抽象方法 | 可以定义default方法 |
构造方法 | 可以有构造方法 | 不允许有构造方法 |
访问修饰符 | 可以使用任意访问修饰符 | 只能使用public访问修饰符 |
- Java的接口( interface )定义了纯抽象规范, 一个类可以实现多个接口
- 接口也是数据类型,适用于向上转型和向下转型
- 接口的所有方法都是抽象方法,接口不能定义实例字段
- 接口可以定义default 方法( JDK版本>= 1.8 )