一、定义
桥接模式也叫桥梁模式,将实现与抽象放在两个不同的层次中,使得两者可以独立地变化。(最主要的将实现和抽象两个层次划分开来)
![](https://i-blog.csdnimg.cn/blog_migrate/15ed39baa4b4a1507d53da3890c609b8.png)
二、类图
![](https://i-blog.csdnimg.cn/blog_migrate/02e83130326ebf7a28fa81e86a93be0f.png)
Client:桥接模式的调用者
Abstraction(抽象类):充当桥接类,主要职责是定义出该角色的行为,同时保存一个对实现化角色的引用。
RefinedAbstraction:是Abstraction抽象类的子类
Implementor(实现化角色):行为实现化的接口
ConcreteImplementor(具体实现化角色):行为的具体实现类
三、优点
- 实现了抽象和实现部分的分离,从而极大的提供了系统的灵活性,让抽象部分和实
现部分独立开来, 这有助于系统进行分层设计,从而产生更好的结构化系统。 - 对于系统的高层部分,只需要知道抽象部分和实现部分的接口就可以了,不需要关心细节的实现,其它的部分由具体业务来完成。
- 桥接模式替代多层