十九.适配器模式
适配器模式:
Adapter:将一个类的接口装换成客户希望的另外一个接口。
使得原本由于接口不兼容而不能工作的类可以一起工作。
.Net中DataAdapter就是作用于DataSet和数据源之间的适配器。
多是用在后期维护,修改时,复用类似的类,方法或控件时使用。
Demo:
classProgram
{
static void Main(string[] args)
{
Player p = new Translator("zhou");
p.Attack();
p.Defense();
Console.ReadKey();
}
}
abstract class Player//抽象篮球队员
{
protected string name;
public Player(string name)
{
this.name = name;
}
public abstract void Attack();
public abstract void Defense();
}
class Translator:Player//此翻译者就是适配器
{
private ForeignCenter f = new ForeignCenter();
public Translator(string name)
: base(name)
{
f.Name = name;
}
public override void Attack()
{
f.进攻();
}
public override void Defense()
{
f.防守();
}
}
class ForeignCenter//第三方控件或过时的类
{
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
public void 进攻()
{
Console.WriteLine("外籍中锋{0}进攻",name);
}
public void 防守()
{
Console.WriteLine("外籍中锋{0}防守",name);
}
}