设计模式之桥接模式(Bridge模式)
·
一、UML类图

二、代码示例
- Client:
public class Client {
public static void main(String[] args) {
Implementor implementor = new ConcreteImplementor();
Abstraction abstraction = new RefinedAbstraction();
abstraction.setImplementor(implementor);
abstraction.operation();
}
}
- Abstraction:
public abstract class Abstraction {
protected Implementor implementor;
protected Implementor getImplementor() {
return implementor;
}
protected void setImplementor(Implementor implementor) {
this.implementor = implementor;
}
public abstract void operation();
}
- RefinedAbstraction:
public class RefinedAbstraction extends Abstraction{
@Override
public void operation() {
implementor.operationImp();
}
}
- Implementor:
public interface Implementor {
void operationImp();
}
- ConcreteImplementor:
public class ConcreteImplementor implements Implementor{
@Override
public void operationImp() { }
}
三、角色介绍
- Client(客户端):
客户端角色,程序的调用者。 - Abstraction(抽象化):
保存Implementor角色,并使用Implementor角色的方法定义基本的功能。 - RefinedAbstraction(改善后的抽象化):
在Abstraction角色的基础上增加新功能。 - Implementor(实现者):
定义用于实现Abstraction角色的接口的方法。 - ConcreteImplementor(具体实现者):
负责实现在Implementor角色中定义的接口。
更多推荐



所有评论(0)