博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
设计模式理解(八)结构型——装饰者模式(记得加上UML图 --- 未完)
阅读量:4617 次
发布时间:2019-06-09

本文共 843 字,大约阅读时间需要 2 分钟。

一段时间没写,又忘了,晕。。。设计模式这种东西一定要经常用。

装饰者模式(Decorator)用于动态地给一个对象增加一些额外的职责,就增加功能来说,他比生成子类更为灵活。

装饰者模式的原则是:

  1. 能用组合就用组合,而不用继承

  2. 在运行时才确定添加的方法

UML类图:

 

/* -------------------------

 * ------- 分割线 ----------

 * ------------------------- */

代码:

///Component:///定义一个对象接口,可以给这些对象动态地添加职责。public interface Component{    void operation();}
///Concrete Component:///定义一个对象,可以给这个对象添加一些职责。public class ConcreteComponent implements Component{    public void operation()    {        // Write your code here    }}
///  装饰者父类, 默认直接调用component的方法public class Decorator implements Component{    public Decorator(Component component){        this.component = component;    }    public void operation(){        component.operation();    }    private Component component;}/// 以后的装饰者子类,重写父类的operator()方法,在里面加入自己的东西即可。

 

 

/*  --- 完 --- */

转载于:https://www.cnblogs.com/myjhaha/p/5235913.html

你可能感兴趣的文章
洛谷P1569属牛的抗议 超级强力无敌弱化版
查看>>
POJ3889Fractal Streets
查看>>
过滤重复值和取最近的时间
查看>>
机器学习面试--朴素贝叶斯
查看>>
回首过去我已无力改变,那就从此刻起努力吧!!!( 2015年10月23日)
查看>>
[转] 宏点滴
查看>>
码农提高工作效率
查看>>
matlab 中randn randi rand randsrc的用法以及区别
查看>>
Linux目录/usr缩写及目录结构说明
查看>>
jquery弹出层-优化-透明边框
查看>>
类string的构造函数、拷贝构造函数和析构函数 (转)
查看>>
【09】循序渐进学 docker:docker swarm
查看>>
Mac下iTerm2配置lrzsz功能
查看>>
[USACO 5.1.3]乐曲主题
查看>>
UVA 1146 Now or later
查看>>
bzoj 3566: [SHOI2014]概率充电器
查看>>
Codeforces 547D Mike and Fish
查看>>
ubuntu14.04安装opgngl
查看>>
[NOIp2012提高组]国王游戏
查看>>
ModelDriven的原理,机制及其应用
查看>>