原则4:接口隔离原则 定义 客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。 将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。 举例来说明接口隔离原则:
未遵循接口隔离原则的设计 类图1 这个图的意思是:类A依赖接口I中的方法1、方法2、方法3,类B是对类A依赖的实现。 类C依赖接口I中的方法1、方法4、方法5,类D是对类C依赖的实现。 对于类B和类D来说,虽然他们都存在着用不到的方法(也就是图中红色字体标记的方法),但由于实现了接口I,所以也必须要实现这些用不到的方法。
示例代码 对类图不熟悉的可以参照程序代码来理解,代码如下:
//接口 interface I { void method1(); void method2(); void method3(); void method4(); void method5(); }
class A { public void depend1(I i) { i.method1(); } public void depend2(I i) { i.method2(); } public void depend3(I i) { i.method3(); } }
class B : I { public void method1() { Debu