面试中经常问到的,有必要整理下:
NO | 区别 | 抽象类 | 接口 |
1 | 定义的关键字不同 | Abstract | Interface |
2 | 组成 | 抽象方法、普通方法、构造方法、常量、变量、全局常量、全局变量 | 全局常量、抽象方法 |
3 | 权限 | 各种权限 | 只有public |
4 | 子实现类 | 子类利用extends关键字继承抽象类 | 子类使用implement关键字实现接口 |
5 | 关系 | 抽象类可以实现多个接口 | 接口不同够继承抽象类但是接口却可以同时使用extends继承多个父接口 |
6 | 限制 | 子类只能够继承一个抽象类,存在单继承局限 | 子类可以同时实现多个接口,不存在单继承局限 |
7 | 设计模式 | 模板设计模式(servlet设计思路) | 代理设计模式、工厂模式 |