OOP三大特徵和五大設計原則

1.封裝

        封裝就是把數據和對數據進行的操作集合在一起,然後將實現與使用分離,只暴露部分接口和屬性供外部使用。

 

2.繼承

        繼承,可以讓某個類型的對象獲得另一個類型的對象的屬性和方法,並在無需重新編寫原來的類的情況下對這些功能進行擴展。繼承增加了類的可重用性。

 

3.多態

       多態指同一個行爲具有多個不同表現形式或形態,一般通過子類繼承父類實現,同一個方法在多個子類中有着不同的實現,這樣在實例化這些子類的對象調用相同的接口後卻可以獲得完全不同的結果。

 

1.依賴倒置原則

       上層模塊不應該依賴於下層模塊,他們應該共同依賴於一個抽象。細節依賴於抽象,抽象不依賴於細節。常用實現方式:在代碼中使用抽象類,而將具體類放在配置文件中。

 

2.開放-封閉原則

       一個軟件或軟件模塊應該對功能的擴展是開放的,是支持的,但是對於已經寫好的部分的修改應該是封閉的,是儘可能少的。比如一個軟件,原本只能解析xml格式文件,現在需要添加解析json格式文件的功能,這時不應該對原有的解析xml文件模塊進行大規模修改,而可以添加解析json格式文件的功能,這就需要在設計之初將解析流程中公共的部分抽象出來,對抽象編程而不是對具體編程。

 

3.單一職責原則

       單一職責原則有兩層含義,一是一個類不應該承擔太多職責,二是相同的職責不應該分給多個不同的類,總的來說就是需要職責明細。

 

4.接口隔離原則

       客戶端不應該依賴於那些它不需要的接口,即一個類的肥胖接口需要用多個接口替代之,這樣客戶端對該類的依賴性就建立在了最少的接口上。

 

5.里氏替換原則

       子類應該可以在任何場景下替換父類。一般就是在子類中實現或者重寫所有父類的方法。

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