梗概

  • 一种上层封装,类似于一个转接头
    • 将接口A经过上层封装之后变成接口B,把这个上层封装的逻辑都放在一个叫适配器(Adaptor)的类里面
    • 然后外部直接调用这个适配器类

适用范围

优点

1、可以让任何两个没有关联的类一起运行。 2、提高了类的复用。 3、增加了类的透明度。 4、灵活性好。

缺点

过多地使用适配器,会让系统非常零乱,不易整体进行把握。比如,明明看到调用的是 A 接口,其实内部被适配成了 B 接口的实现,一个系统如果太多出现这种情况,无异于一场灾难。因此如果不是很有必要,可以不使用适配器,而是直接对系统进行重构。

场景

  • 有动机地修改一个正常运行的系统的接口,这时应该考虑使用适配器模式。
  • 适配器不是在详细设计时添加的,而是解决正在服役的项目的问题。