1.使用场景:
分离两个变化的维度,通过组合的方式来减少系统中臃肿繁琐的代码,例如JDBC中的驱动程序。
2.UML表示:
2.1 实现(Implementor):定义具体行为,具体特征的应用接口。
2.2 具体实现(ConcreteImplementor):实现Implementor。
2.3 目标接口(Target): 包含实现具体行为、具体特征的Implementor接口或者类。
3.代码实现
这里边的类代码比较的多,而且每一个类又比较的简单,所以直接通过UML图来进行讲解:
在未使用桥接模式之前,代码结构如下:
通过使用桥接模式,这时候的代码结构变成下面的情形:
具体的代码可以下面的链接进行下载:
https://github.com/memoryexplosion/design_pattern_review/tree/master/src/java/bridge