桥接模式
1:桥接模式的目的是把抽象层次结构从其实现中分离出来,使其能够独立变更。
2:抽象层定义了供客户端使用的上层的抽象接口。实现层次结构定义了抽象层次使用的底层接口。
3:实现类的引用被封装于抽象层的实例中,桥接就形成了。
示意图
Abstraction:定义了供客户端使用的上层抽象接口的父接口,它有一个对Implementor实例的引用
Refined Abstraction:抽象接口Abstraction的子类,依旧是一个抽象的事物名
Implementor:定义了实现类的接口,这个接口不必跟Abstraction的接口一致,其实两个接口可以相当不同。
ConcreteImplementor:实现Implementor接口
Implementor的接口提供了基本操作,而Abstraction的上层操作基于这些基本操作。当客户端向Abstraction的实例发送Operation消息时,这个方法向implemtor发送OperationImp消息,底下的实际ConcreteImplementor(A或B)将作出响应并接受任务。
因此想要往系统中添加新的ConcreteImplementor时,所要做的只是为Impelmentor创建一个新的实现类&#x