zoukankan      html  css  js  c++  java
  • 装饰者模式

    对对象增强的手段
    1.继承:
     被增强的对象时固定的
     被增强的内容时固定的
    2.装饰者模式
     被增强的对象是变化的
     增强点是固定的
     
    3.动态代理模式
     被增强的对象是变化的
     增强点是变化的

    装饰者模式:
     calss 加糖  extends 咖啡{
     }
     calss 加奶  extends 咖啡{
     }
     calss 加盐  extends 咖啡{
     }
     继承增强方式导致一个问题:类的暴增
     
     装饰者模式:是你还是你,一切拜托你
     
     底层对象:被包装的对象
     
     节点流: 直接和资源绑定在一起的
     包装流: 不能直接操作资源的,必须通过底层对象
     BufferedInputStream(InputStream in)
     ObjectInputStream(InputStream in)
     
     FileInputStream fis= new FileInputStream("c:/name.txt")
     BufferedInputStream bis = BufferedInputStream(fis)
     ObjectInputStream ois = ObjectInputStream(bis)
     装饰者模式适合的场景:
     1.被增强点只有一个或是两个
     2.被增强的对象类型不明确

     

  • 相关阅读:
    C# WinForm程序退出的方法
    SpringCloud 微服务框架
    idea 常用操作
    Maven 学习笔记
    SpringBoot 快速开发框架
    html 零散问题
    Java方法注释模板
    Seating Arrangement
    hibernate 离线查询(DetachedCriteria)
    hibernate qbc查询
  • 原文地址:https://www.cnblogs.com/star521/p/9023710.html
Copyright © 2011-2022 走看看