目标抽象角色(Target)
定义客户要用的特定领域接口
适配器(Adapter)
调用另一个接口,作为一个转换器
适配器(Adaptee)
定义一个接口,Adapater需要介入
客户端(Client)
协同对象符合Adapater适配器
插线板案例

两种类型的适配器模式
- 类适配器(采用继承的方法)
- 对象适配器(采用对象组合的方式)


Target
interface Target
{void MyOutPut();
} Adaptee
interface Adaptee
{void OutPut();
} ConcreteAdaptee1
public class ConcreteAdaptee1 : Adaptee
{public void OutPut()
{Console.WriteLine("From ConcreteAdaptee");
} } ConcreteAdaptee2
class ConcreteAdaptee2 : Adaptee
{public void OutPut()
{Console.WriteLine("From ConcreteAdaptee2");
} } Adapter
class Adapter : Target
{private Adaptee _adaptee; //必须要维护一个Adaptee类型的成员变量
public Adapter(Adaptee adaptee)
{this._adaptee = adaptee;
}public void MyOutPut()
{this._adaptee.OutPut();
} } Client
class Client
{static void Main(string[] args)
{Target target = new Adapter(new ConcreteAdaptee1());
target.MyOutPut();
target = new Adapter(new ConcreteAdaptee2());
target.MyOutPut();
Console.Read();
} } 
分析
