上QQ阅读APP看书,第一时间看更新
2.2.1 基类的替身
不同的设计原则应用在不同的场合,什么情况下需要用到里氏替换这个原则呢?软件设计中经常会遇到基类设计的方法不够用的情况,这时候可以实现一个派生类,在派生类中增加新的方法,作为基类的替补,用来扩展基类并代替基类,达到基类不变、功能增加的目的。下面就分别用书面语与大白话讲解里氏替换原则。
(1)用书面语讲里氏替换原则
里氏替换原则是重新定义派生类的一种方法。它由芭芭拉·利斯科夫在1987年的一次名为“数据的抽象与层次”的演说中首先提出。里氏替换原则的内容可以描述为派生类对象可以在程序中代替基类对象。
(2)用大白话讲里氏替换原则
在进行程序设计需要用到派生类时,应当对现有的基类进行扩展,而不应该改变现有的基类代码,使用里氏替换原则可以在不重新编写基类函数的情况下,达到派生类完全替换基类的目的。换句话说,基类可以出现的地方,派生类一定可以出现,用派生类代替基类,无须修改任何代码,反之则不可行。这需要满足一个硬性条件:派生类拥有基类的所有行为方法。
关键词:派生类、基类、代替。