文章目录
- 抽象类
- 应用场景
- 模板方法设计模式
- 接口
- JDK8后新增的三种方法
- 注意事项(了解)
抽象类
抽象类中可以不写抽象方法,但有抽象方法的类一定是抽象类
应用场景
- 两种主要的应用场景,一种是:用抽象类,我们可以把子类中相同的代码,包括方法签名都抽上来,这样能更好的支持多态,以提高代码的灵活性。
- 一种是:反过来用,我们不知道系统未来具体的业务实现时,我们可以先定义抽象类,将来让子类去继承实现,以方便系统的扩展。
模板方法设计模式
多学一招:建议使用final关键字修饰模板方法,为什么?
接口
- 一个类可以实现多个接口(接口可以理解成干爹),实现类实现多个接口,必须重写完全部接口的全部抽象方法,否则实现类需要定义成抽象类。
- 面向接口编程:可以很方便的灵活切换各种业务实现了。
JDK8后新增的三种方法
增强了接口的能力,更便于项目的扩展和维护。
注意事项(了解)
1、一个接口继承多个接口,如果多个接口中存在方法签名冲突,则此时不支持多继承。
2、一个类实现多个接口,如果多个接口中存在方法签名冲突,则此时不支持多实现。
3、一个类继承了父类,又同时实现了接口,父类中和接口中有同名的默认方法,实现类会优先用父类的。
4、一个类实现了多个接口,多个接口中存在同名的默认方法,可以不冲突,这个类重写该方法即可。