1、Bridge模式简介
所谓Bridge就是连接两处的通道。
《设计模式》一书对Bridge模式的意图是这样叙述的:
“将抽象与实现解耦,使它们都可以独立地变化。”
2、Bridge模式关键特征
意图 | 将一组实现与另一组使用它们的对象分离。 |
问题 | 一个抽象类的派生类必须使用多个实现,但不能出现类数量爆炸性增长 |
解决方案 | 为所有实现定义一个接口,供抽象类的所有派生类使用。 |
参与者与协作者 | Abstraction为要实现的对象定义接口,Implementor为具体的实现类定义接口。Abstraction的派生类使用Implementor的派生类,却无需知道自己具体使用哪一个ConcreteImplementor。 |
效果 | 实现与使用实现的对象解耦,提供了可扩展性,客户对象无需操心实现问题。 |
实现 | 1、 将实现封装在一个抽象类中; 2、 在要实现的抽象类的基类中包含一个实现的句柄。 |