定义:用多个专门的接口,而不是使用单一的总接口,客户端不应该依赖它不需要的接口
一个类对一个类的依赖应该建立在最小的接口上
建立单一接口,不要建立庞大臃肿的接口
尽量细化接口,接口中的方法尽量少
注意适度原则,一定要适度
优点:符合我们常说的高内聚低耦合的设计思想,从而使得类具有很好的可读性、可扩展性和可维护性。
示例
会飞的狗?
代码实现
- 创建IAnimalAction接口
/**
* @author lijiayin
*/
public interface IAnimalAction {
void eat();
void fly();
void swim();
}
- 创建Dog类
/**
* @author lijiayin
*/
public class Dog implements IAnimalAction {
@Override
public void eat() {
}
@Override
public void fly() {
}
@Override
public void swim() {
}
}
3.UML
UML.png
狗不会飞
应该把不同的行为放在不同的接口中
代码实现
- 创建IEatAction接口
/**
* @author lijiayin
*/
public interface IEatAction {
void eat();
}
- 创建IFlyAction接口
/**
* @author lijiayin
*/
public interface IFlyAction {
void fly();
}
- 创建ISwimAction接口
/**
* @author lijiayin
*/
public interface ISwimAction {
void swim();
}
- 修改Dog类
/**
* @author lijiayin
*/
public class Dog implements IEatAction, ISwimAction {
@Override
public void eat() {
}
@Override
public void swim() {
}
}
-
UML类图
UML.png
网友评论