适配器模式是通过一个类的接口转换成客户希望的另外一个接口,使原本由于接口不兼容而不能一起工作的那些类可以一起工作。
适配器从结构上可以分为类适配器和对象适配器。其中类适配器使用继承关系来对类进行适配,而对象适配器是使用对象引用的方法来进行适配的。
public interface ITarget
{
void Request();
}
public class Adaptee
{
/// <summary>
/// 不能直接被客户使用的方法
/// </summary>
public void SpecificRequest()
{
Console.WriteLine("这是原有特殊方法!");
}
}
public class Adapter : Adaptee, ITarget
{
public void Request()
{
SpecificRequest();
}
}
类适配器
对象适配器
实例
举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本来读取内存卡。
源码地址
其他设计模式