April
23rd,
2012
首先让我们来感谢一下Barbara Liskov,提出了关于继承的原则:Inheritance should ensure that any property proved about supertype objects also holds for subtype objects(继承必须确保超类中所拥有的性质在子类中仍然成立)。
然后我们来说里氏替换原则,Liskov Substitution Principle。其核心思想就是:子类型必须能够替换他们的父类型。在软件设计中,凡是父类出现的地方,用子类进行替换之后,软件本身并不受到影响。其实,正是由于子类的可替换性,使得父类模块可以在不进行修改的情况下进行扩展。
这应该是我们学习面向对象语言时就应该有深刻理解的,在设计时,遵循这条原则,可以使我们的父类与子类之间的继承关系更加优美,为我们之后的扩展与维护带来方便。