天天看點

六大設計原則 -依賴倒置原則【Dependence Inversion Principle】

六大設計原則

單一職責原則

裡式替換原則

依賴倒置原則

接口隔離原則

迪米特原則

開閉原則

定義:高層子產品不應該依賴低層子產品,二者都應該依賴其抽象;抽象不應該依賴細節;細節應該依賴抽象。

解決方法:将類A修改為依賴接口I,類B和類C各自實作接口I,類A通過接口I間接與類B或者類C發生聯系,則會大大降低修改類A的幾率

代碼:

解析:

原本Mother類與Book類直接耦合時,Mother類必須等Book類編碼完成後才可以進行編碼,因為Mother類依賴于Book類。修改後的程式則可以同時開工,互不影響,因為Mother與Book類一點關系也沒有。

傳遞依賴關系辦法:

1.依賴接口(上面的方法)

2.構造方法傳遞

3.setter方法傳遞