属于结构型模式(共7种)
目的:双维度扩展
在抽象和具体两个维度上同时扩展互相不影响 不会产生类爆炸
类图:
概述:
分离抽象和具体;用聚合方式(桥)连接抽象与具体
举例用法
使用桥接模式: 分离抽象与具体实现,让他们可以独自发展
Gift -> WarmGift 、ColdGift 、 WildGift
GiftImpl -> Flower 、Ring 、Car
//抽象类 聚合抽象具体类public abstract class Gift {GiftImpl impl;}//抽象系中的具体实现类public class WarmGift extends Gift {//子类构造方法 参数为父类属性public WarmGift(GiftImpl impl) {this.impl = impl;}}//抽象类中聚合的 具体类public class GiftImpl {}//具体类族系中 具体类public class Flower extends GiftImpl {}//实际使用public class GG {public void chase(MM mm) {Gift g = new WarmGift(new Flower());give(mm, g);}public void give(MM mm, Gift g) {System.out.println(g + "gived!");}}
桥接经典的例子
系统的窗口
