Java I/O之Decorator模式
????? Java编程有一段时间了,但是一直都感觉挺浮躁的,对基础知识没有真正好好的看一下,总是要的时候就是Google、百度,以至于以前用过的东西很快就忘了,每次都得打开资料文件再去阅读,因此决定现在重温一下基础知识,并且在博客上复习过程做一个记录,加深自己的记忆!
????? Java I/O即Java 输入输出,在Jdk占据着较为重要的地位,关于程序的描述中,输入和输出都比较重要的地位的,因此这几天就依着Java I/O库,顺藤摸瓜并且结合前段学习设计模式的时候对设计模式的理解,对Java I/O中使用的较为普遍的设计模式拿出来做个简要的记录,当然这些在网络上很多地方都有~~废话少说,直接进入主题吧!~~
1、Decorator模式
Decorator:常被翻译成”装饰", 觉得翻译成"油漆工"更形象店,油漆工(decorator)是用来刷油漆的,那么被刷油漆的对象我们称decoratee,这两种实体在Decorator模式中是必须的。
1.1、定义:动态给一个对象添加一些额外的职责,就像在墙上刷油漆,使用Decorator模式相比用生成子类的方法达到功能的扩充显得更为灵活。
1.1、Decorator模式对应的简单UML,如下所示:
?2、Java I/O Decorator
在Java I/0操作中,经常使用到得一段程序如下:
至此,相应的设计模式的探索已经得到,至于使用的细节,可以去参考JDK或者去阅读源码。
注:下一篇将记录Java I/O中使用的另外一种设计模式:适配器(Adapter)-----http://zhoucl.iteye.com/blog/1113183
?