设计模式之适配器模式
结构
说明
Convert the interface of a class into another interface clients expect. An adapter lets classes work together that could not otherwise because of incompatible interfaces.
将某个类的接口转换成客户端期望的另一个接口表示。适配器模式可以消除由于接口不匹配所造成的类兼容性问题。
适用条件
- 需要使用一个已经存在的类, 但接口与设计要求不符;
- 需要创建一个可复用的类, 该类可以与其它不相干的类或是将来不可预见的类协同工作。
实现
代码语言:javascript复制interface ITarget {
void Request();
}
class Adapter : ITarget {
private readonly Adaptee _adaptee;
public Adapter(Adaptee adaptee) {
this._adaptee = adaptee;
}
void ITarget.Request() {
this._adaptee.PerformRequest();
}
}
class Adaptee {
public void PerformRequest() {
Console.WriteLine("Addaptee perform request.");
}
}
class Program {
static void Main(string[] args) {
ITarget target = new Adapter(new Adaptee());
target.Request();
Console.ReadLine();
}
}