定义
客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。
问题
如图:
类A依赖接口I中的方法1、方法2、方法3,类B是对类A依赖的实现。类C依赖接口I中的方法1、方法4、方法5,类D是对类C依赖的实现。对于类B和类D来说,虽然他们都存在着用不到的方法(也就是图中红色字体标记的方法),但由于实现了接口I,所以也必须要实现这些用不到的方法。
解决
如图:
如果将这个设计修改为符合接口隔离原则,就必须对接口I进行拆分。
本文共 223 字,大约阅读时间需要 1 分钟。
客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。
如图:
类A依赖接口I中的方法1、方法2、方法3,类B是对类A依赖的实现。类C依赖接口I中的方法1、方法4、方法5,类D是对类C依赖的实现。对于类B和类D来说,虽然他们都存在着用不到的方法(也就是图中红色字体标记的方法),但由于实现了接口I,所以也必须要实现这些用不到的方法。
如图:
如果将这个设计修改为符合接口隔离原则,就必须对接口I进行拆分。
转载地址:http://hukko.baihongyu.com/