4.装饰器模式(Decorator Pattern)

概述

  The decorator pattern provides a flexible alternative to subclassing for extending functionality. When using subclassing, different subclasses extend a class in different ways. However, an extension is bound to the class at compile-time and can't be changed at run-time. The decorator pattern allows responsibilities to be added (and removed from) an object dynamically at run-time. It is achieved by defining Decorator objects that

  • implement the interface of the extended (decorated) object (Component) transparently by forwarding all requests to it.
  • perform additional functionality before or after forwarding a request.
    This allows working with different Decorator objects to extend the functionality of an object dynamically at run-time.

  针对于功能扩展需求场景,装饰器模式提供一个不用子类化(继承)的灵活的替代方案。当你使用子类化(继承)方案时,子类以不同的方式继承一个类。但是扩展的功能在编译时被绑定到类上并且在运行时不能更改。

相关推荐
老码观察2 天前
设计模式实战解读(六):装饰器模式——功能增强,不动原代码
java·设计模式·装饰器模式
快乐江湖12 天前
「层层包装」—— 装饰器模式
开发语言·python·装饰器模式
likerhood12 天前
设计模式-装饰器模式(java)
java·设计模式·装饰器模式
蜡笔小马16 天前
06.C++设计模式-装饰模式
c++·设计模式·装饰器模式
雪度娃娃19 天前
结构型设计模式——装饰模式
设计模式·装饰器模式
c++之路19 天前
装饰器模式(Decorator Pattern)
java·开发语言·装饰器模式
geovindu1 个月前
go:Decorator Pattern
开发语言·设计模式·golang·装饰器模式
ximu_polaris1 个月前
设计模式(c++)-结构型模式-装饰器模式
c++·设计模式·装饰器模式
Q741_1471 个月前
设计模式之装饰器模式 理论总结 C++代码实战
c++·设计模式·装饰器模式
Rsun045511 个月前
7、Java 装饰器模式从入门到实战
java·开发语言·装饰器模式