2.4接口隔離原則(Interface Segregation Principle)
2022-02-07 11:20 作者:取悅疾風(fēng) | 我要投稿
內(nèi)容來自尚硅谷Java設(shè)計模式(圖解+框架源碼剖析)_嗶哩嗶哩_bilibili
寫在前面:本文內(nèi)容大致和原視頻內(nèi)老師的筆記內(nèi)容相同,會偶爾插入自己的注釋和理解,盡量會完成作業(yè)
2.4.1基本介紹
1)????? 客戶端不應(yīng)該依賴它不需要的接口,即一個類對另一個類的依賴應(yīng)該建立在最小的接口上
2)????? 先看一張圖:

3)????? 類A通過接口Interface1依賴類B,類C通過接口Interface1依賴類D,如果接口Interface1對于類A和類C來說不是最小接口,那么類B和類D必須去實現(xiàn)他們不需要的方法。
4)????? 按隔離原則應(yīng)當(dāng)這樣處理:
將接口Interface1拆分為獨立的幾個接口(這里我們拆分成了3個接口),類A和類C分別與他們需要的接口建立依賴關(guān)系。也就是采用接口隔離原則
2.4.2應(yīng)用實例
1)????? 類A通過接口Interface1依賴類B,類C通過接口Interface1依賴類D,請編寫代碼完成此應(yīng)用實例。
2)????? 看老師代碼-沒有使用接口隔離原則的代碼
2.4.3傳統(tǒng)方法的問題和使用接口隔離原則改進(jìn)
1)????? 類A通過接口Interface1依賴類B,類C通過接口Interface1依賴類D,如果接口Interface1對于類A和類C來說不是最小接口,那么類B和類D必須去實現(xiàn)他們不需要的方法
2)????? 將接口Interface1拆分為獨立的幾個接口,類A和類C分別與他們需要的接口建立依賴關(guān)系。也就是采用接口隔離原則
3)????? 接口Interface1中出現(xiàn)的方法,根據(jù)實際情況拆分為三個接口

4)????? 代碼實現(xiàn)
標(biāo)簽: