目的 | 该模式用于分离抽象与实现,并且抽象与实现可以独立变化 |
应用场景 | (1)希望抽象和实现之间没有固定的绑定关系,不同抽象接口和实现可以组合和扩充,程序运行时动态选择、切换具体实现 (2)类层次结构,且有许多类要生成。比如神话中头胎系统分为两个层次,灵魂(抽象)和肉体(实现)。灵魂可以动态选择肉体,得到响应肉体的功能。 (3)对客户完全隐藏抽象的实现。比如,客户使用IPAD,不需要关心IPAD构成 |
构成 | 抽象化、扩展抽象化、实现化、具体实现化 |
备注 | 桥接模式采用组合关系替代继承关系,分离抽象和实现,可以很好地解决多维度扩展问题 |
桥接模式由抽象化、扩展抽象化、实现化、具体实现化等组成。
(1)抽象化:抽象类接口,并包含一个对实现化对象的引用。
(2)扩展抽象化:抽象化类的子类,扩展了抽象化的方法。
(3)实现化:定义实现化类的接口供调用,可以与抽象化接口完全不同
(4)具体实现化:给出实现化接口的具体实现。