桥接(Bridge)模式
将抽象与实现部分分离,使得他们都可以独立的变化。又称为接口(Interface)模式
体现了单一职责、开闭、合成复用、里氏代换、依赖倒转原则。
如何使用:
1、识别出一个类所具有的两个独立变化的维度,将他们设计成两个独立的继承等级结构;为两个维度都提供抽象层,并建立抽象耦合;
结构图
Abstraction: 定义抽象类接口,一般是抽象类不是接口;同时定义一个Implementor类型对象,关联关系
RefinedAbstraction:实现抽象类声明的抽象业务方法,并可以调用在Implementor中定义的业务方法;
Implementor: 定义类接口,仅对操作做声明,具体子类去实现;
ConcreteImplementor:具体实现类;程序运行时,会替换到父类对象,提供给抽象类具有的业务操作方法;