@Source:《Think in Java》 ch.7
复用代码是Java众多引人注目的功能之一。但要想成为极具革命性的语言,仅仅能够复制代码并对之加以改变时不够的,它还必须能够做更多的事情。
复用方法 :
- 组合: has-a
- 继承: is-a
- 代理
一、确保正确清理 :一般而言,Java所采用的形式应该与C++编译器在其析构函数上所施加的形式相同。执行类的所有特定的清理动作,其顺序同生成顺序相反。
二、Java SE5新增加的“@Override”注解,它不是关键字,但是可以把它当作关键字使用。当你想要覆写某个方法时,可以选择添加这个注解。
三、向上转型 :“ 为新的类提供方法 ” 并不是继承技术中最重要的方面,其最重要的方面是用来表现新类和基类之间的关系 。这种关系可以用“新类是现有类的一种类型 ”这句话加以概括。
四、到底是该用组合还是用继承 :一个最清晰地判断办法就是问一问自己是否需要从新类向基类进行向上转型。如果不需向上转型,则继承是必要的;但如果不需要,则应该好好考虑自己是否需要继承。