7、装饰器模式

假如现在有一块蛋糕,
如果只涂上奶油,其他什么都不加,就是奶油蛋糕。
如果加上草莓,就是草莓奶油蛋糕。
如果再加上一块黑色巧克力板,上面用白色巧克力写上姓名,
如果再插上代表年龄的蜡烛,就变成了一块生日蛋糕
像这样不断地为对象添加装饰的设计模式被称为Decorator模式

简单描述:一个基础共有的对象,你想赋予它什么职责那么你添加相关的职责修饰,这就是装饰器模式。
具体应用:Mybatis的二级缓存实现本质上就是装饰器模式的使用,具体的装饰链是:

SynchronizedCache -> LoggingCache -> SerializedCache -> LruCache -> PerpetualCache。
image.png

你可能感兴趣的:(7、装饰器模式)