首页> 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学习者快速成长!