六大設計原則-里氏替換原則

1、開閉原則       
2、接口隔離原則
3、依賴倒置原則
4、迪米特原則            
5、里氏替換原則    
6、單一職責原則

 

里氏替換原則

什麼是里氏替換原則?

里氏替換原則的定義:任何使用基類的地方,都可以透明的使用其子類。從定義中可以看出,它和繼承差不多,我們也可以這樣理解,里氏替換原則=繼承+透明,也就是繼承的加強版,取其繼承的優點,剔除繼承的缺點。

爲什麼要使用里氏替換原則:

例如,鴕鳥、燕子從生物學的角度來劃分,它們都屬於鳥,但從繼承關係來看,由於它們不能繼承“鳥”會飛的能力,所以它們不能定義成“鳥”的子類。因此如果把鴕鳥和燕子都繼承“鳥”的特性,那麼在程序中繼承類的對象在基類出現的地方就會出現運行錯誤,爲了避免這種錯誤,我們要遵循里氏替換原則:取消原來的繼承關係重新設計它們之間的關係。

怎麼樣纔算遵守裏式替換原則?

父類實現的東西,子類就不要再寫了(就是不要new隱藏);

如果想修改父類的行爲,通過abstract或virtual來修改;

父類有的,子類必須有,如果出現了子類沒有的東西,那麼就應該斷掉繼承,再重新寫一個父類

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章