介面隔離原則是指用多個專門的介面,而不使用單一總介面,客戶端不應該依賴它不需要的介面,這個原則指導我們在設計乙個介面的時候要注意以下幾點:
乙個類對另乙個類依賴應該建立在最小的介面之上。
建立單一介面, 不要建立龐大臃腫的介面
盡量細化每個介面,介面中的方法盡量少(不是越少越好,而是要適度)
介面隔離原則完全符合高內聚、低耦合的思想,可以是其擁有更好的擴充套件性、可讀性和可維護性,下面已animal動物類為例:
public inte***ce ianimal
public class bird implements ianimal
@override
public void fly()
@override
public void swim()
}public class dog implements ianimal
@override
public void fly()
@override
public void swim()
}
這時候有的動物不需要飛行,但是我們的介面也實現過來了,針對這個問題,我們可以把每個行為都生成乙個介面,然後誰需要,誰就直接實現。
public inte***ce ieatanimal
public inte***ce iflyanimal
public inte***ce iswimanimal
public class dog implements ieatanimal,iswimanimal
@override
public void swim()
}
我們在日常開發中,接到需求之後一定不要急於動手,而是把之後變化考慮到位 介面隔離原則
一 isp簡介 isp inte ce segregation principle 使用多個專門的介面比使用單一的總介面要好。乙個類對另外乙個類的依賴性應當是建立在最小的介面上的。乙個介面代表乙個角色,不應當將不同的角色都交給乙個介面。沒有關係的介面合併在一起,形成乙個臃腫的大介面,這是對角色和介面...
介面隔離原則
介面隔離原則 isp 客戶端不應該依賴於它不需要的介面。另一種說法是,類間的依賴關係應該建立在最小的介面上。這樣就可以對客戶端隱藏其他的介面資訊,客戶端 只需要知道它需要的內容介面,然後去處理即可,可以更加專注於對功能的實現,其他一概不管。這就是用最小化介面隔離了實現類的細節,也促使我們將龐大的介面...
介面隔離原則
我們在學校的時候,每學期都會評比三好學生,通過德智體美勞全面考查,選舉出優秀的學生,接下來我們以這個為例 首先,我們定義乙個三好學生的介面 public inte ce igoodstudent 三好學生的實現類,每個學生都有名字的,三好學生也不例外 public class goodstudent...