天天看點

深刻了解 面向對象設計原則之依賴導緻原則

依賴導緻原則:

定義:

       高層子產品不應該依賴低層子產品,兩者都應該依賴其抽象;抽象不應該依賴細節,細節應該依賴抽象.

作用:

       通過面像接口(或抽象類)的程式設計來降低類間的耦合性.

使用原則:

   1. 每個類盡量提供接口或抽象類,或者兩者都具備。

   2. 變量的聲明類型盡量是接口或者是抽象類。

   3. 任何類都不應該從具體類派生。

   4. 使用繼承 (擴充功能)時盡量遵循裡氏替換原則。

正确例子:

      客戶購買不同商品該怎麼實作呢?

      商品需要抽象一個接口或着抽象類, 不同的商品繼承父類, 實作細節.

      客戶購買類, 應該引用商品抽象類, 不應該引用具體實作類.

父類:

      商品父類: 定義屬性 商品名, 價格。定義方法 購買函數, 傳回商品的名字和價格.

子類:

      牙刷類、牙膏類: 重寫父類的商品名和價格.

客戶購買類:

      定義方法 購買函數, 參數是商品父類, 調用其購買函數.

繼續閱讀