一:复用功能介绍
复用代码,除了对代码复制并加以改变是不够的,除此之外,还能够使用类而不破坏现有程序代码。
java 中代码复用可以分为以下三类:组合,继承,代理。
二:组合
新的类中使用现有类的对象,新的类由现有类的对象组成。
三:继承
通过extends 语法来实现声明。
四:代理
java 对代理没有提供直接支持,但通过组合和继承完成了间接实现,代理是组合和继承的中庸之道。代理=继承+组合
具体理解可以参考相关代码!
五:基类方法被子类重载
子类重载父类的方法,不会屏蔽其在基类中的任何版本,因此,无论是在该层或者它的基类中对方法定义,重载机制都可以正常执行。
六:再论组合与继承
强调继承并不意味着我们要尽可能使用继承,相反,应该谨慎使用继承。如何判断该使用继承还是使用组合,一个最清晰的判断方法就是问一问自己是否需要从新类向基类进行向上转型。