基本介紹:客戶端不應該依賴於它不需要的介面即乙個類對另乙個類的依賴應該建立在最小的介面上。
①類a通過inte***ce1會依賴(使用)b,但是a中只會使用到介面中的1,2,3三個方法。
②類c通過inte***ce1會依賴(使用)d,但是c中只會使用到介面中的1,4,5三個方法。
分析:
①b、d分別實現了inte***ce1的5個方法
②a依賴使用b時只用到了1,2,3方法,即b實現的4,5方法可以說是白寫了,因為我們沒用到
③c依賴使用d時只用到了1,4,5方法,即d實現的2,3方法可以說也是白寫了,因為我們也沒用到
問題:
類a通過介面inte***ce1依賴類b,類c通過介面inte***ce1依賴類d,如果介面inte***ce1對於類a和類c來說都不是最小介面,那麼類a和類d都必須實現它們不需要的方法
採用介面隔離原則:將介面inte***ce1拆分為獨立的幾個介面,類a與類c分別與它們需要的介面建立依賴關係
2.1**實現
2.2操練一把
1、如上述方案1,如不使用介面隔離原則,則會造成浪費,例a通過介面依賴b使用1、2、3方法,而b實現了所有方法,a卻沒有用到4、5方法,這不是浪費嘛
2、介面隔離原則:客戶端不應該依賴於它不需要的介面即乙個類對另乙個類的依賴應該建立在最小的介面上(介面中我用不到的方法,把介面拆分成小的介面,依賴小介面)
設計模式六大原則 介面隔離原則 六
物件導向其它六大原則 單一職責原則 帶你走夢幻西遊 一 依賴倒置原則 二 開閉原則 三 迪公尺特原則 帶你走進夢幻西遊 四 黎克特制替換原則 五 定義 客戶端不應該依賴它不需要的介面 乙個類對另乙個類的依賴應該建立在最小的介面上。通俗來講不要強迫客戶使用它們不用的方法,如果強迫使用者使用它們不使用的...
六大原則之介面隔離原則
客戶端不應該依賴它不需要的介面,即乙個類對另乙個類的依賴應該建立在最小的介面上 a 類通過介面 inte ce1 依賴 使用 b 類,但是只會用到 1,2,3 方法 class apublic void depend2 inte ce1 i public void depend3 inte ce1 ...
設計模式之六大原則 介面隔離原則(ISP)
介面隔離原則 inte ce segregation principle 定義 我們可以把這兩個定義概括為一句話 建立單一介面,不要建立臃腫龐大的介面。再通俗一點講 介面盡量細化,同時介面中的方法盡量少。提供給每個模組的都應該是單一介面,提供給幾個模組就應該有幾個介面,而不是建立乙個龐大的臃腫的介面...