【设计模式之禅】里氏替换原则

发布时间 2023-08-15 22:54:39作者: 小奥先生
  • 什么叫里氏替换原则?

    "这里需要如下的替换性质:若对类型S的每一个对象O1,都存在一个类型T的对象O2,使得在所有针对T编写的程序P中,用O1替换O2后,程序P的行为功能不变,则S是T的子类型。"这是最专业最权威的定义,但是我当时就是看不懂这句话,看完这个章节也没有完全理解,只能通俗易懂的来描述:让子类中的方法参数或者返回结果是相同的或者是父类的子集

  • 书中的里氏替换原则

    这本书真的写的特别特别好,能够让我这个对计算机不是很感兴趣的人读的很起劲,原因就是在于他用词接地气,并且举了很多有趣的例子,比如说反恐精英中开枪方法的入参是玩具枪,虽然是枪的子类,但是没有满足业务需要,所以子类一定也是可以满足父类的业务需求的如果子类不能完整地实现父类的方法,或者父类的某些方法在子类中已经发生“畸变”,则建议断开父子继承关系,采用依赖、聚集、组合等关系代替继承。

  • 里氏替换原则的优势
    1. 代码共享,即公共代码被抽到父类。
    2. 提高代码重用性,子类在父类的基础上可以有自己的特性。
    3. 提高代码的扩展性。
  • 里氏替换原则的实际应用  

    emmmmmmmm,暂时想不到,期待大佬补充,我只想到在做代码review的时候,不去修改抽象类.........