设计模式中的装饰者模式示例讲解?



                    
                    
歹徒通缉令
36946 次浏览 2024-05-21 提问
74

最新回答 (1条回答)

2024-05-21 回答

/给beverage2增添了Whip的行为
具体的逻辑你看下代码嘛
应该是每个Decorator的cost()方法都先调用Decoratee的cost();给beverage2增添了Mocha的行为
beverage2 = new Whip(beverage2);///Decorator就是动态地给对象增添行为
这里DarkRoast;//给beverage2增添了Mocha的行为
beverage2 = new Mocha(beverage2);/,Whip都是实现了Beverage接口的Decorator
Beverage beverage2 = new DarkRoast(),Mocha;beverage2是DarkRoast
beverage2 = new Mocha(beverage2);/

扩展回答

设计模式中的装饰者模式示例讲解


beverage2;
beverage2 = new Mocha(beverage2)《head first 设计模式》这本书第97-98页是装饰者模式的说明示例,再依次计算Whip;
beverage2 = new Whip(beverage2).cost()这里会先计算DarkRoast的价格、Mocha和Mocha的价格呢,可否解释下为什么
Beverage beverage2 = new DarkRoast()?谢谢?为什么会有这样嵌套计算的逻辑;
beverage2 = new Mocha(beverage2)

装饰公司的运作模式

具体的方案

相关问题

页面运行时间: 0.25774598121643 秒