《Head First设计模式》之装饰者模式
但是因为饮料可以认为是由咖啡和调料组成的,多种咖啡和多种调料就能组合成无数多种的饮料。那么上述的方式实现饮料就会出现如下的情况。饮料种类过多,“类爆炸”!
接下来看一段短对话;
这里涉及到了一个涉及原则;
===========接下来就到了本文的主题【装饰者模式】=============
那之前的星巴克咖啡我们也可以用这样的装饰者模式去进行实现了。看一下如下的设计图:
然后将设计使用具体代码来实现;
然后,就是实现具体的装饰者了,其实就是饮料中的调料。先从摩卡(Mocha)下手吧。
现在可以测试测试下订单,喝杯咖啡了!!!
这样就可以很好的使用装饰者设计模式来实现卖咖啡的功能了。
我们可以尝试下编写自己的java I/O类