设计模式(9)——装饰器模式

来源:互联网 发布:全面战争战锤 linux 编辑:程序博客网 时间:2024/05/17 23:56

为什么要使用装饰器模式?

  在扩充一个类对象的功能的时候,经常使用继承的方式,但是当组合很多的时候,会出现很多的子类,造成“类爆炸”。使用装饰器模式:将一个类的对象嵌入到另一个对象中,由另一个对象来决定是否调用嵌入对象的行为以便扩展自己的行为。

什么是装饰器模式?

    动态地给一个对象增加一些额外的职责(Responsibility),就增加对象功能来说,装饰模式比生成子类实现更为灵活。其别名也可以称为包装器(Wrapper),与适配器模式的别名相同,但它们适用于不同的场合。根据翻译的不同,装饰模式也有人称之为“油漆工模式”,它是一种对象结构型模式。

如何使用装饰器模式?

    装饰器模式包含的角色:
- Conponent:抽象组件
- ConcreteConponent:具体组件
- Decorator:抽象装饰
- ConcreteDecorator:具体装饰

装饰器模式的类图:
装饰器模式的类图

原创粉丝点击