光輝歲月

导航

 

  第一次好好的看设计模式,可能有不对的地方,大佬们可以下面指出,感谢!

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

 

  穿什么有这么重要?——装饰模式

 

  生活中有这么个场景,假如我们在睡觉,临时有事要出门,这时候我们要穿衣服出门,这时候穿衣服是一件件穿起来,穿什么,穿几件,这些都是可以拓展的,什么顺序穿着?

  在代码中,我有了一部分功能,但是我不确定后续会不会继续添加新功能,还有添加功能的顺序,那我们可以把现有业务服务对象当做被装饰者装饰起来,后期添加新功能只需要添加对应装饰器即可!

 

  定义怎么去装饰被装饰者的类——装饰器公用类:

被装饰者:

实际装饰器组件:

 

具体装饰类:

 

 

程序调用:

 

控制台输出:

战士初始是裸装的,我们可以慢慢给战士打造装备,但是穿什么装备,什么顺序穿,这些是一点都不冲突的,改变装备和穿装顺序,程序调用处修改即可:

要什么装备去添加具体装饰即可。

装饰模式结构:

posted on 2019-06-21 18:15  光輝歲月  阅读(140)  评论(1编辑  收藏  举报