接口隔离原则
接口隔离原则:是指用多个专门的接口,而不使用单一的总接口,客户端不应该依赖它不需要的接口。
设计接口时应该注意以下几点:
- 一个类对另一个类的依赖应该建立在最小的接口之上
- 建立单一接口,不需建立庞大臃肿的接口
- 尽量细化接口,接口中的方法尽量少(不是越少越好,一定要适度)
下面我们来看一段代码,对一个动物行为进行抽象描述:
IEatAnimal接口的代码如下:
public interface IEatAnimal {
void eat();
}
IFlyAnimal接口的代码如下:
public interface IFlyAnimal {
void fly();
}
ISwimAnimal接口的代码如下:
public interface ISwimAnimal {
void swim();
}
Dog只实现 IEatAnimal 和 ISwimAnimal 接口,代码如下:
public class Dog implements ISwimAnimal,IEatAnimal {
@Override
public void eat() {
}
@Override
public void swim() {
}
}
public class Bird implements IFlyAnimal,IEatAnimal {
@Override
public void eat() {
}
@Override
public void fly() {
}
}