class Person
{
public Person(){}
private String name;
public Person(String name)
{
this.name = name;
}
public void show()
{
System.out.print("装扮的"+name);
}
}
class Finery extends Person
{
protected Person person;
// 打扮
public void Decorate(Person person)
{
this.person = person;
}
public void show()
{
if(person!=null)
{
person.show();
}
}
}
class TShirts extends Finery
{
public void show()
{
System.out.print("大体恤 ");
super.show();
}
}
class BigTrouser extends Finery
{
public void show()
{
System.out.print("裤子 ");
super.show();
}
}
public class DecoratorPattern {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Person p = new Person("小菜");
System.out.println("第一种");
TShirts ts = new TShirts();
BigTrouser bt = new BigTrouser();
ts.Decorate(p);
bt.Decorate(ts);
bt.show();
}
}
装饰模式
最新推荐文章于 2024-09-02 07:00:00 发布