首頁> Java> java教程> 主體

介面隔離原則

王林
發布: 2024-08-25 22:30:33
原創
836 人瀏覽過

Interface Segregation Principle

任何客戶端都不應該被迫依賴它不使用的方法

考慮辦公空間的範例,其中使用物件表示各種輸出設備

介面隔離原則之前

I多功能介面

雷雷

現在為各種設備實現上述通用介面

具有所有功能的 XeroxWorkCenter 類別

雷雷

HpPrinterNScanner 類別具有列印和掃描功能

雷雷

CanonPrinter 類別只有列印功能

雷雷

ISP違規辨識技巧

  • 胖介面(具有兩個多方法聲明的介面)
  • 低內聚的介面(具有不太可能彼此相關的方法的介面)
  • *空方法實作*(當類別被迫實作他們不使用的方法時,他們將方法的實作留空)

介面隔離原則之後:

雷雷 雷雷 雷雷 雷雷 雷雷 雷雷

每個介面都有一個單一的職責,並且現在更加乾淨。

ISP 與其他 SOLID 原則的關係

單一責任
將介面分割成不同的介面後,現在所有介面(例如 IPrint、IScan)都有單一職責

里氏替換
由於隔離,現在所有類別(實現介面)都遵循里氏替換,因為所有子類型或實作類別都可以用它們的介面引用變數替換

以上是介面隔離原則的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!