一、概述

类的适配器模式把被适配的类的API转换成为目标类的API

二、结构

1、类的适配器模式

o_adapter1.gif Target:所期待得到的接口

Adaptee:现有需要适配的类

Adapter:把源接口转化成目标接口的核心类

2、对象的适配器模式

o_adapter2.gif

  1. 同一个适配器可以把源和其子类都适配到目标接口
  2. 与类的适配器相比,要覆盖源类的方法不很容易,除非做一个源类的子类,然后对子类适配
  3. 可以很方便地添加一个方法

三、动机

  1. 系统需要使用现有的类,而该类的接口不符合系统新的需要
  2. 需要建立一个可复用的类用于使一些彼此之间没有太大关系的类一同工作
  3. 需要改变多个已有的子类的接口