概念
桥接模式是一种结构型设计模式,其UML图像一座桥,通过抽象部分与实现部分分离,使它们可以独立变化,从而达到降低系统低耦合的目的。桥接模式只要目的是通过组合建立两个类之间的联系,而不是继承的方式。
基本结构
抽象Abstraction:一般是抽象类,定义抽象部分接口,维护一个队实现的引用
修正抽象RefinedAbstaction :对抽象接口进行扩展,通常对抽象化的不同维度进行变化或定制
实现Implementor:定义实现部分接口,提供具体的实现。这个接口通常是抽象化接口的实现
具体实现ConcreteImplementor:实现实现化接口的具体类。这些类负责实现实现化接口定义的具体操作。
举个例子,遥控器就是抽象接口,它具有开关电视的功能,修正抽象就是遥控器的实例,对遥控器的功能进行实现和扩展,而电视就是实现接口,具体品牌的电视机是具体实现,遥控器中包含一个对电视接口的引用,通过这种方式,遥控器和电视的实现被分离,我们可以创建多个遥控器,每个遥控器控制一个品牌的电视机,它们之间独立操作,不受电视品牌的影响,可以独立变化。