首先,设计模式只是一个种思想,从实际开发中,考虑各种情况,而慢慢积累优化出来的设计模型。
在谈装饰者模式:
在编码的过程,把具体的问题抽象成现实生活中的情景,往往很让人理解,后续维护也很简单。
在这里我们就要抽象一个“装饰者”和一个“被装饰者”
这个两个对象是装饰模式中不可缺少的。
装饰模式还有一个原则,被装饰者,被装饰其本质的行为和属性依然存在,只是对他功能做了
扩展。
大家都知道InputStream->ByteArrayInputStream->ObjectInputStream
其实这就用了装饰者模式的思想
被装饰者是InputStream 装饰者分别是:ByteArrayInputStream和ObjectInputStream。
同时ByteArrayInputStream和ObjectInputStream装饰InputStream 依然保留InputStream
read()这个根本的行为。。。。。
原文地址:http://www.cnblogs.com/lzl-sml/p/3733513.html