抽象类和接口都是常用的类的结构设计,接口比抽象类更方便。
no | 区别点 | 抽象类 | 接口 |
1 | 关键字 | abstrcat class 类名称{} | interface 接口名称{} |
2 | 结构组成 | 抽象方法、普通方法、全局常量、全局变量、属性、构造方法 | 抽象方法、全局常量 |
3 | 权限 | 各种权限 | public |
4 | 子类使用 | extends | implements |
5 | 关系 | 一个抽象类可以实现多个接口 | 一个接口不能继承抽象类,但是可以extends继承父接口 |
6 | 限制 | 一个子类只能继承一个抽象类 | 一个子类可以实现多个接口 |
在实际开发中,抽象类的设计比接口复杂。
结构:对象、类 、 抽象类、 接口
大的接口 -- 小的接口(继承) -- 抽象类 (实现)--类(继承来的)--对象(new)
看见接口首先考虑创建子类
接口是java的核心;开发之中优先考虑接口,避免单继承局限。