11.2.2 使用继承机制
更新于 2026年10月10日
版权声明
11.2.2 使用继承机制
继承是类与类之间的一种关系,继承允许新的软件模块或类可定义对现存类的扩充、专门化或合并。继承是实现利用可复用软件构件构造系统的有效机制是面向对象软件开发的关键。某些OOP语言允许多重继承,即允许一个类具有一个以上的父类。
前述的准则提高了继承共享代码的机会。有时,尽管不同的类上的方法是相似的,但还不是以同一个可继承的方法来表示。下面几种技术可以用来将方法分解以继承某些代码。
(1)子过程:最简单的方法是将共同代码分解成单个的能被其他方法调用的方法。这个共存的方法可以附在祖类上。例如,控制打印机的方法可以分解成两个简单的方法,一个是接通打印机,另一个是断开打印机。(https://www.daowen.com)
(2)分解因子:某些情况下,提高相似类的代码复用性的最好的方法是在不同类的方法之间分解出其不同因子,将余下的代码作为共享的方法。当方法之间差别不大而相似很多时,使用这种方法十分有效。有时为了组织高层次方法,必须加一个抽象类。
(3)委派:当不存在实际的父类/子类关系时,有时在一个程序内使用继承也会提高代码重用性。这时可以使用实现继承,用委派来代替。在这种情况,用委派机制来实现对所期望的代码复用,可以减少副作用。
(4)封装内部代码:程序员都很希望能重用那些同一应用中不同界面风格的代码。直接在外部代码中插入调用不如把其行为封装在一个操作或类内安全。这样方法的外部程序或软件包可以被改变或替换,程序员仅仅在一处改变其代码就可以了。