“将抽象与实现分离,使二者可以独立的变化。”
桥接模式用于解决两个群组之间呈现交叉组合汇编的情况。它避免了“只能以继承实现来完成功能的实现”。
实际上为两个群组提供了一个桥梁,而这个桥梁就是它们自身一般化的两个接口类。
举例:西瓜、冬瓜、南瓜是一个群组,生吃和炒菜是一个群组,那么如果两者要合作完成吃瓜的动作,只用继承来完成会产生3*2=6个新子类,而桥接模式就把瓜抽象成一个接口类,做法抽象成一个接口类,然后让瓜里面引用一个吃法类,这样就搭建了一个接口类之间的桥梁,让瓜和吃法的关联程度降低,方便以后买新瓜或者钻研出新吃法:奥利给拌瓜皮。
这两个群组可以是两个需要交叉合作后才能完成某项任务的类,也可以是“抽象定义”和“功能实现”。
网友评论