public class Persion { private String name; public Persion() { } public Persion(String name) { super(); this.name = name; } public void show() { System.out.println("装扮的"+this.name); }}// 服饰类public class Finery extends Persion { protected Persion compoent; public void Decorate(Persion component) { this.compoent=component; } public void show() { if(compoent!=null) { compoent.show(); } }}// 具体装饰类public class PiXie extends Finery{ @Override public void show() { System.out.print("皮鞋"); super.show(); }}public class Big_Thours extends Finery{ @Override public void show() { System.out.print("大裤子"); super.show(); }}public class XiFu extends Finery{ @Override public void show() { System.out.print("西服"); super.show(); }}public class Test { public static void main(String[] args) { Persion xc=new Persion("小菜"); // 皮鞋 PiXie piXie=new PiXie(); // 西服 XiFu xiFu=new XiFu(); // 大裤子 Big_Thours big_Thours=new Big_Thours(); // 装饰过程 piXie.Decorate(xc); xiFu.Decorate(piXie); big_Thours.Decorate(xiFu); big_Thours.show(); }}