技术开发 频道

设计模式总结-Bridge模式

  【IT168技术文档】

  一、使用Bridge模式的目的:

  使用Bridge模式的一个动机应该是:对象拥有多个属性,行为,在不同的时刻由不同的属性和行为组合可以表现出不同的外部特征。(即排列、组合形式)

  如果对每一种属性和行为的组合进行绑定,作为一个子类,那么势必造成大量的子类存在。而且一旦原有的属性改变,或者行为改变了,会导致原有的类需要重新修改编译。

  如果将属性、行为分开,采用动态组合的方式,在运行时动态决定需要将那个属性和那个行为搭配,除了可以减少子类的数量之外,还增强了未来的扩展性。

  二、Bridge模式与Decorator模式的异同:

  1).两者都具有动态设定、改变类运行时功能的意图和手法

  2).前者着重的是在原有功能基础上的小修改,并不需要将抽象和行为分开,后者则着重于整体的组合,抽象和实现分离

  三、Bridge模式的特点:

  ·在抽象接口中包含了一个对行为接口的引用,这样的话行为的操作将完全委托给行为接口完成,抽象类无需关心。

  ·在抽象类的继承子类中,调用了行为类的子类来实现不同的行为。此时抽象类的子类中只知道属性,但不知道具体的行为实现,实现了概念与行为的分离

  ·在行为类的继承子类中,只知道执行相应的动作,但不知道具体的属性,实现了行为和概念的分离

0
相关文章