适配器模式 -- 大话设计模式
在今天,读书有时是件“麻烦”事。它需要你付出时间,付出精力,还要付出一份心境。--仅以《大话设计模式》来祭奠那逝去的……
适配器模式:将一个类的接口转换成客户希望的另外一个接口,主要应用于希望复用一些现存类,但接口又与复用环境要求不一致的情况
适配器模式分为类适配器模式和对象适配器模式,但是由于主流语言C#、Java等不支持多重继承,因此多使用对象适配器模式
1.适配器模式应用
将源接口转换成目标接口,及客户想要的接口
定义抽象适配类,及客户想要的接口
/// <summary>
/// 抽象适配类(客户所期待的接口)
/// </summary>
public abstract class Target
{
public abstract void Request();
}
定义现存类
/// <summary>
/// 现存业务类(需要适配的类)
/// </summary>
public class Adaptee
{
public void SpecificRequest()
{
Console.WriteLine("特殊请求");
}
}
定义具体适配类,将源接口转换成目标接口
/// <summary>
/// 具体适配类(将源接口转换成目标接口)
/// </summary>
public class Adapter : Target
{
private Adaptee adaptee = new Adaptee();//内置一个私有的现存类
/// <summary>
/// 表面上调用的是客户要求的接口,但真正执行的是现存类的方法
/// </summary>
public override void Request()
{
adaptee.SpecificRequest();
}
}
开启场景模拟
static void Main(string[] args)
{
Target t = new Adapter();
t.Request();
}

浙公网安备 33010602011771号