您的位置首页  日常用品  装饰

「趣味设计模式系列」之「装饰器模式」

  装饰器模式(Decorator Pattern):动态地给一个对象添加职责,就增加功能来说,装饰器比生成子类更灵活。

  水果店需要给网上客户发货,除了包装之外,需要对特定水果包装加额外装饰,比如加防伪标志、加固、加急等额外功能,但在外部看来还是打包组件。

  苹果使用纸箱包装===============打印上防伪标识===============加固了包装*********************************橘子使用网兜包装===============打印上防伪标识===============加固了包装===============打上加急标识从上述例子可以看出,装饰器的好处,不仅可以对具体的水果包装类进行装饰,多个装饰器还可以嵌套装饰,非常灵活,这也是为什么,装饰器中需要引用Bag类,就是方便嵌套,因为每个具体的装饰器,本身也是Bag的子类。

  Java IO类库非常庞大,从大类分,如果从按流的方向来分的话,分为输入流InputStream,输出流OutputStream,如果按照读取的方式分的话,分为字节流与字符流,具体如下图

  在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责。处理可以撤销的职责。扩展子类灵活,避免产生累爆炸。4.2 缺点

免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186