源码

首页 » 归档 » 源码 » 设计模式 – 将实例变量移动到装饰器模式…

设计模式 – 将实例变量移动到装饰器模式…


在关于装饰器模式的章节中的“头部设计模式(2014年,第2版)”一书中,作者从4种调味品类(牛奶,摩卡,大豆,鞭子)中采用实例变量饮料饮料并将其放入摘要中class CondimentDecorator. (参见第110页,getSize()的解决方案 – 问题)

public abstract class CondimentDecorator extends Beverage{
  public Beverage beverage;
  public abstract String getDescription();

  public Size getSize(){
    return beverage.getSize();
  }
}

将实例变量饮料饮料从调味品类移动到抽象类CondimentDecorator的原因是什么?

他们这样做是为了保存一些代码行吗,因为现在调味品不需要声明自己的实例变量,因为它们从抽象类继承它?

咖啡店的UML图在移动实例变量之前:

UML for coffee shop

(0)

本文由 投稿者 创作,文章地址:https://blog.isoyu.com/archives/shejimoshi-jiangshilibianliangyidongdaozhuangshiqimoshi.html
采用知识共享署名4.0 国际许可协议进行许可。除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为:11 月 11, 2019 at 02:17 下午

热评文章