大话设计模式(一):装饰器模式

最近读了很多csdn上的java文章,发现很多大神都写了关于设计模式的文章,为了向大神看齐,于是我也要写关于设计模式的文章。

         但凡好的文章,或者说那些让人容易读懂的文章,无不都是通过类比的方式向读者表达自己的观点,基于此,每篇文章我都会举一个例子。

         装饰器模式顾名思义就是在原来的基础之上加上一些修饰。你比如说,现在很多同学都喜欢刷抖音,里面的小姐姐一个比一个漂亮,看都看不过来。自从作者刷抖音之后,感觉每天都在谈恋爱,而且是见一个爱一个。。。。。。

         好像扯远了,回到我们的话题。那么这些小姐姐为什么这么漂亮啊,还不都是因为她们化了妆,如果她们卸了妆,作者敢保证一个比一个吓人,也就是我们说的丑女。

这里我们就得出一个结论:原始的女人都是丑女,化了妆装饰后的女人都是小姐姐。

         不管是丑女还是小姐姐都是女人,可以抽象出一个Woman接口;

         不管是丑女还是小姐姐都可以供我们欣赏,我们可以抽象出一个display()方法;

于是我们就可以定义一个丑女和小姐姐共同的接口:

然后再让我们的丑女和小姐姐实现这个借口:

注:装饰器模式是为了增强原有类的功能,所以这里我们的小姐姐持有一个丑女的对象,这样就可以调用丑女的功能了

调用类:

运行结果:

不知这样讲设计模式你懂了吗?

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值