里氏替換原則

里氏替換原則

聊聊繼承

繼承優勢

  • 提高程式碼的復用性(每個子類有擁有父類的屬性和方法)
  • 提高程式碼的可擴展性

繼承劣勢

  • 繼承是侵入性的(只要繼承,就必須擁有父類的屬性和方法)
  • 繼承機制很大的增加了耦合性

繼承其實是一把雙刃劍

基本介紹

里氏替換原則通俗的來講:子類可以擴展父類的功能,但是子類不能修改父類原有的功能

里氏替換原則就是給繼承性的使用定義了規範

注意事項

  • 子類可以實現父類的抽象方法,但是不能覆蓋父類的非抽象方法
  • 子類中可以擴展自己的方法
  • 歷史替換原則並非讓我們盡量避免使用繼承
  • 里氏替換原則是實現開閉原則的重要方式之一