设计模式之装饰器模式io的小入门

Posted look at me now

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式之装饰器模式io的小入门相关的知识,希望对你有一定的参考价值。

装饰器模式详解地址 


原文总结

定义: 在不必改变原类文件和使用继承的情况下, 动态的扩展一个对象的功能. 通过创建一个包装对象, 也就是装饰来包裹真实的对象

uml

部分详解提示

看了一些文档, 装饰器模式非常依赖构造器 与 重写方法

装饰器模式的特点: 不改变原来的类 , 不使用继承 , 动态扩展


流这块除了文件上传下载使用过, 确实用的太少了这里继续复习下最简单的文件上传

  • 文件目录的创建
    • 目录的是否存在没有就创建
    • 不推荐: 年/月/日 一般没什么用户权限的图片之类的不过
    • 推荐: 模块/用户/模块/年/月/日
  • 获取临时上传的路径
  • 判断文件类型, 创建文件 , 开流写入硬盘关流

原文中在修饰到datainputstream是有个为什么不去直接修饰inputstream?

解答: 由于使用的是fileinputstream. 其中的read方法中有个 fileReadEnd, 防止文件没有关闭通道

datainputstream与pushbackinputstream详解

  • datainputstream是一个允许数据输入流从底层中读取基本java数据类型, 与机器无关就是指统一的io不管系统是pc还是mac之类的
    • 其中的readutf方法我复习了一点位运算 & 二进制之间的运算 详细的解析地址看这里DataInputStream详解
  • pushbackinputstream为另一个流添加性能, pushback(退会)和 unread 取消读取

其他的一些流

  • InputStreamReader 转码功能 reader的功能
  • BufferedReader 读取行readLine
  • LineNumberReader 获取行号
  • PushbackReader reader版的取消读取

inputstreamUML

steam

以上是关于设计模式之装饰器模式io的小入门的主要内容,如果未能解决你的问题,请参考以下文章

设计模式之装饰器模式

学习设计模式之装饰器模式

编程模式之Go语言如何实现装饰器

《设计模式》之装饰器模式

设计模式之-装饰器模式

java设计模式之装饰器模式