今天继续读<java 编程思想>,读到了复用类一章,看到总结写的很好,现贴上来,给大家分享. 继承和组合都能从现有类型生成新类型.组合一般是将现有类型作为新类型底层实现的一部分来加以复用,而继承复用的是接口. 在使用继承时,由于导出类具有基类接口,因此它可以向上转型至基类,这对多态来讲至关重要. 尽管面向对象编程对继承极力强调,但在开始一个设计时,一般应优先考虑使用组合(或者可能是代理),只在确实必要时才使用继承.因为组合更具灵活性.此外,通过对成员类型使用继承技术的添加技巧,可以在运行时改变…