您的位置:首页 > 编程语言 > Java开发

【Java设计模式】装饰模式

2014-02-12 14:17 405 查看

(转载请注明出处:http://blog.csdn.net/buptgshengod

1.背景

        装饰模式就是为一个对象增添新的功能,在对象的基础上修饰。本文实现的功能是,对象a有方法show输出“This is a test”,经过装饰后输出“This is a test for decorate”。实质就是多个类通用一个接口,然后将要修饰的类定义在修饰类的构造函数里。

2.代码实现

(1)首先建立通用接口,里面有方法show()

package Decorate;

public interface Component {

public void show();
}


(2)建立一个类实现show

package Decorate;

public class Concrete implements Component{
public void show(){
System.out.print("This is a test");
}
}

(3)建立decorate的实现类
package Decorate;

public class Decorate implements Component {
Component component;
public Decorate(Component c){
component=c;
}
public void show(){
component.show();
System.out.print(" for decorate");
}
}


(4)客户端使用
package Decorate;

public class Client {
public static void main(String[] args){
Component a=new Concrete();
Component b=new Decorate(a);
a.show();
System.out.println();
b.show();
}

}


结果

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: