设计模式之装饰模式
装饰模式,就像穿衣服样,可以随意搭配!可以想象当我们做个系统,可以随意组合功能一样!
class Preson //定义的基本类
{
public Person(){}
private string name;
public Person(string name)
{
this.name=name;
}
public virtual void Show()
{
Console.WriteLine("装扮的{0}",name);
}
}
public class Finey :Person //服饰类
{
protected Person person1;
public void Declare(Person person1)
{
this.person1=person1;
}
public override void Show()
{
if(person1!=null)
{
person1.Show();
}
}
}
public class Tshirts :Finey //具体服饰类
{
public override void Show()
{
console.Write("大T恤");
base.Show();
}
}
public class BigTrouser :Finey //具体服饰类
{
public override void Show()
{
console.Write("大裤子");
base.Show();
}
}
具体调用:
preson mm=new person("美眉");
Tshirts t=new Tshirts();
BigTrouser b=new BigTrouser();
t.Declare(mm);//装饰T恤
b.Declare(t);//装饰裤子
b.Show();
结果:大裤子 大T恤 装扮的美眉

浙公网安备 33010602011771号