北大青鸟上地软件园:装饰模式(Decorator).doc

北大青鸟上地软件园:装饰模式(Decorator).doc

ID:62073662

大小:59.00 KB

页数:2页

时间:2021-04-16

北大青鸟上地软件园:装饰模式(Decorator).doc_第1页
北大青鸟上地软件园:装饰模式(Decorator).doc_第2页
资源描述:

《北大青鸟上地软件园:装饰模式(Decorator).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、个人收集整理勿做商业用途北大青鸟上地软件园:装饰模式(Decorator)顾名思义,装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例,关系图如下:北大青鸟上地软件园Source类是被装饰类,Decorator类是一个装饰类,可以为Source类动态的添加一些功能,代码如下:[java] viewplaincopy1.public interface Sourceable {  2.    public void method();  

2、3.}  [java] viewplaincopy1.public class Source implements Sourceable {  2.  3.    @Override  4.    public void method() {  5.        System。out.println(”the original method!”);  6.    }  7.}  [java] viewplaincopy1.public class Decorator implements Sourceab

3、le {  2.  3.    private Sourceable source;  4.      5.    public Decorator(Sourceable source){  6.        super();  7.        this。source = source;  8.    }  9.    @Override  10.    public void method() {  11.        System.out。println(”before decorator!”)

4、;  个人收集整理勿做商业用途1.        source。method();  2.        System。out。println(”after decorator!");  3.    }  4.}  测试类:[java] viewplaincopy1.public class DecoratorTest {  2.  3.    public static void main(String[] args) {  4.        Sourceable source = new Source

5、();  5.        Sourceable obj = new Decorator(source);  6.        obj。method();  7.    }  8.}  输出:beforedecorator!theoriginalmethod!afterdecorator!装饰器模式的应用场景:1、需要扩展一个类的功能。2、动态的为一个对象增加功能,而且还能动态撤销。(继承不能做到这一点,继承的功能是静态的,不能动态增删。)缺点:产生过多相似的对象,不易排错!(北大青鸟上地软件园)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。