里式替换

76 阅读1分钟

里式替换原则

子类对象能够替换程序中父类对象出现的任何地方,并且保证原来程序的逻辑行为不变及正确性不被破坏。

哪些代码明显违背了里式替换

  1. 子类违背父类声明要实现的功能
  2. 子类违背父类对输入、输出、异常的约定
  3. 子类违背父类注释中所罗列的任何特殊说明

理解这个原则,我们还要弄明白里式替换原则跟多态的区别。虽然从定义描述和代码实现上来看,多态和里式替换有点类似,但它们关注的角度是不一样的。多态是一种语法。它是一种代码实现的思路。而里式替换是一种设计原则。

此文章为 8 月Day17学习笔记,内容来源于 极客时间《设计模式之美》