Java 设计模式
2006-07-14 17:34
495 查看
-------------------------------------------------------------------------------------------------------------------------------------------------------
设计模式之Decorator(油漆工)
http://www.jdon.com/designpatterns/decorator.htm
Decorator定义:
动态给一个对象添加一些额外的职责,就象在墙上刷油漆.使用Decorator模式相比用生成子类方式达到功能的扩充显得更为灵活.
为什么使用Decorator?
我们通常可以使用继承来实现功能的拓展,如果这些需要拓展的功能的种类很繁多,那么势必生成很多子类,增加系统的复杂性,同时,使用继承实现功能拓展,我们必须可预见这些拓展功能,这些功能是编译时就确定了,是静态的.
使用Decorator的理由是:这些功能需要由用户动态决定加入的方式和时机.Decorator提供了"即插即用"的方法,在运行期间决定何时增加何种功能.
设计模式学习笔记(十)——Decorator装饰模式
Decorator装饰模式是一种结构型模式,它主要是解决:“过度地使用了继承来扩展对象的功能”,由于继承为类型引入的静态特质,使得这种扩展方式缺乏灵活性;并且随着子类的增多(扩展功能的增多),各种子类的组合(扩展功能的组合)会导致更多子类的膨胀(多继承)。继承为类型引入的静态特质的意思是说以继承的方式使某一类型要获得功能是在编译时。所谓静态,是指在编译时;动态,是指在运行时。
GoF《设计模式》中说道:动态的给一个对象添加一些额外的职责。就增加功能而言,Decorator模式比生成子类更为灵活。
-------------------------------------------------------------------------------------------------------------------------------------------------------
设计模式之Decorator(油漆工)
http://www.jdon.com/designpatterns/decorator.htm
Decorator定义:
动态给一个对象添加一些额外的职责,就象在墙上刷油漆.使用Decorator模式相比用生成子类方式达到功能的扩充显得更为灵活.
为什么使用Decorator?
我们通常可以使用继承来实现功能的拓展,如果这些需要拓展的功能的种类很繁多,那么势必生成很多子类,增加系统的复杂性,同时,使用继承实现功能拓展,我们必须可预见这些拓展功能,这些功能是编译时就确定了,是静态的.
使用Decorator的理由是:这些功能需要由用户动态决定加入的方式和时机.Decorator提供了"即插即用"的方法,在运行期间决定何时增加何种功能.
设计模式学习笔记(十)——Decorator装饰模式
Decorator装饰模式是一种结构型模式,它主要是解决:“过度地使用了继承来扩展对象的功能”,由于继承为类型引入的静态特质,使得这种扩展方式缺乏灵活性;并且随着子类的增多(扩展功能的增多),各种子类的组合(扩展功能的组合)会导致更多子类的膨胀(多继承)。继承为类型引入的静态特质的意思是说以继承的方式使某一类型要获得功能是在编译时。所谓静态,是指在编译时;动态,是指在运行时。
GoF《设计模式》中说道:动态的给一个对象添加一些额外的职责。就增加功能而言,Decorator模式比生成子类更为灵活。
-------------------------------------------------------------------------------------------------------------------------------------------------------
相关文章推荐
- Java IO 流 设计模式
- Java设计模式之装饰者模式
- java设计模式学习之简单工厂模式
- Java进阶篇设计模式之九----- 解释器模式和迭代器模式
- Java开发中的23种设计模式详解----模板方法模式(Template Method)
- Java的设计模式之前言
- Java开发中的23种设计模式详解(转)
- 从Java类库看设计模式(2)
- Java/Android 设计模式系列(21)--备忘录模式
- (设计模式三)java设计模式之抽象工厂模式
- java设计模式记录
- java设计模式之单例模式
- java学习面向对象之设计模式之单例模式
- Java设计模式之工厂方法模式
- Java设计模式之观察者模式
- Java-单态设计模式
- Java之美[从菜鸟到高手演变]之设计模式三
- java设计模式2.工厂模式
- java设计模式--Singleton
- java设计模式9.备忘录模式、访问者模式、调停者模式