?
想到继承与实现,就一定会联想到抽象类与接口,本文就以抽象类与接口为入口进行简单概括,同时对继承与实现进行扩展小结。
?
?
为了复用该类的方法,即多态的实现,(一脉相承,照单全收)
相较于普通类多了一个抽象方法,(不可被static,final修饰)修饰权限只能为(public或protected)
由于不能new抽象类,所以构造方法只能提供子类调用
可强制性规范写法,明确需要覆盖的方法
为什么是单继承多实现?
举个例子:
A有方法eat(),B和C继承并重写了A的eat()
假如,此时D多继承了B和C,就会导致eat()方法同名
然而,实现则是每次都会对方法重写(确保都在B,C层级上),即使B,C接口都有eat()方法,也只重写一个
继承用法
继承可用在对原有类的扩展上,比如一张数据表定义完后,后期需要对该表功能进行扩充,即可使用继承来添加新的字段。
?
?
增强代码的扩展性,取其精华去其糟粕(东拼西凑)
抽象类的再抽象
由(public static)常量和(public abstract)抽象方法组成
JDK1.8后可以定义默认的实现方法
没有构造方法(类与接口的区别,单继承与多实现的区别)
精确扩展功能,不会把不需要的方法或变量也继承下来
需要新功能时,只需要新添加一个接口,实现该接口即可
原文:https://www.cnblogs.com/guaosky/p/12543743.html