23种设计模式之适配器模式(Adapter)
适配器模式将一个接口转换成客户希望的另一个接口,从而使接口不兼容的那些类可以一起工作。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。在类适配器模式中,通过使用一个具体类将适配者适配到目标接口中;在对象适配器模式中,一个适配器可以将多个不同的适配者适配到同一个目标。
/// <summary>
/// 圆形类
/// </summary>
public class Circle : Shape
{
private XXCircle pcx = new XXCircle();//实例化XXCircle对象
public void Display()
pcx.DisplayIt();//让XXCircle做实际工作
}
/// 线性
public class Line : Shape
//program code
/// 面积
public class Square : Shape
/// 显示形状接口
public interface Shape
void Display();
/// 具体实际工作的类
public class XXCircle
/// 实际显示
public void DisplayIt()
Console.WriteLine(this.GetType().Name + ":我来显示啦!");
/// 简单工厂类
public class Factory
/// 获取形状对象
/// <param name="type">类别</param>
/// <returns>形状对象</returns>
public Shape GetShapeInstance(int type)
switch (type)
case 1: return new Line();//线性
case 2: return new Square();//面积
case 3: return new Circle();//圆形
default: return null;//空
class Program
static void Main(string[] args)
//适配器模式
int type = 3;
Factory factory = new Factory();
Shape s;
s = factory.GetShapeInstance(type);
if (s == null)
Console.WriteLine("Error get the instance!");
return;
s.Display();