java类再生
“Java引人注目标一项特性是代码的反复利用可能再生。但最具革命意义的是,除代码的复制和修改以外,我们还能做多得多的其他工作。”
在象C那样的措施化语言里,代码的反复利用早已可行,但结果不是出格显著。与Java的其他处所一样,这个方案办理的也是与类有关的问题。我们通过建设新类来反复利用代码,但却用不着从头建设,可以直接利用别人已建好并调试好的现成类。
但这样做必需担保不会滋扰原有的代码。在这一章里,我们将先容两个到达这一方针的要领。第一个最简朴:在新类里简朴地建设原有类的工具。我们把这种要领叫作“合成”,因为新类由现有类的工具归并而成。我们只是简朴地反复操作代码的成果,而不是回收它的形式。
第二种要领例显得稍微有些能力。它建设一个新类,将其作为现有类的一个“范例”。我们可以原样采纳现有类的形式,并在个中插手新代码,同时不会对现有的类发生影响。这种把戏般的行为叫作“担任”(Inheritance),涉及的大大都事情都是由编译器完成的。对付面向工具的措施设计,“担任”是最重要的基本观念之一。它对我们下一章要报告的内容会发生一些特另外影响。
对付合成与担任这两种要领,大大都语法和行为都是雷同的(因为它们都要按照现有的范例生成新范例)。在本章,我们将深入进修这些代码再生可能反复利用的机制。