软设之桥接模式

桥接模式的意图是:将抽象部分与它的实现部分分离,使它们都可以独立变化。

比如说汽车是一个抽象的概念,但汽车有不同品牌和型号,这些汽车有不同的驱动方式,比如烧油或者电动。假如用传统的方式,每增加一个品牌或者型号,就得改大量代码。采用桥接模式,可以将汽车品牌和型号分离。先定义一个汽车类,类中包含指向驱动的接口。驱动方式创建一个汽油类和电动类。这样每当创建一个新的信号,只需要指定品牌型号的子类,并连接驱动方式的类。

Abstraction:抽象类定义抽象类的接口。维护一个Implementor的对象

RefinedAbstraction:扩充的抽象类,扩充由Abstraction定义的接口

Implementor:实现类接口,定义实现类的接口,这个接口不一定要与Abstraction的接口完全一致,事实上这两个接口可以完全不同,一般的讲Implementor接口仅仅给出基本操作,而Abstraction接口则会给出很多复杂的操作

Concrelmplementor:具体实现类,实现Implementor定义的接口并且具体实现它。

相关推荐

  1. 模式

    2024-07-10 21:20:02       12 阅读
  2. 备忘录模式

    2024-07-10 21:20:02       7 阅读
  3. 命令模式

    2024-07-10 21:20:02       7 阅读
  4. 模式状态模式

    2024-07-10 21:20:02       10 阅读
  5. 职责链模式

    2024-07-10 21:20:02       7 阅读
  6. 观察者模式

    2024-07-10 21:20:02       9 阅读
  7. 享元模式

    2024-07-10 21:20:02       8 阅读
  8. 迭代器模式

    2024-07-10 21:20:02       10 阅读
  9. 访问者模式

    2024-07-10 21:20:02       6 阅读
  10. 中介者模式

    2024-07-10 21:20:02       7 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-10 21:20:02       5 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-10 21:20:02       5 阅读
  3. 在Django里面运行非项目文件

    2024-07-10 21:20:02       4 阅读
  4. Python语言-面向对象

    2024-07-10 21:20:02       7 阅读

热门阅读

  1. 洛谷 B4006 [GESP202406 四级] 宝箱

    2024-07-10 21:20:02       11 阅读
  2. Qt常用基础控件总结—菜单控件(QMenu类)

    2024-07-10 21:20:02       12 阅读
  3. 缓存击穿、缓存穿透、缓存雪崩以及应对措施

    2024-07-10 21:20:02       9 阅读
  4. Python基础学习笔记——异常

    2024-07-10 21:20:02       10 阅读
  5. C语言 printf函数缓冲机制

    2024-07-10 21:20:02       12 阅读