zoukankan      html  css  js  c++  java
  • java设计模式-装饰模式

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

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

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

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

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

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

    被装饰者:

    实际装饰器组件:

    具体装饰类:

    程序调用:

    控制台输出:

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

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

    装饰模式结构:

  • 相关阅读:
    前端-JavaScript
    前端-HTML
    Python源程序(.py)转换为可执行文件(.exe)
    进程
    算法之动态规划问题
    算法之斐波那契数列
    贪心算法找零问题
    算法之迷宫问题
    数据结构相关知识
    常用排序算法
  • 原文地址:https://www.cnblogs.com/ghsy/p/11066151.html
Copyright © 2011-2022 走看看