Java IO小小的心得

转自下面的Java IO总结博文

学习JAVA IO之前必须要先学习装饰模式

 BufferedReader in=new BufferedReader(new   StringReader(BufferedInputFile.read(file)));

上面是Java中创建一个文件对象的语句,Java在IO库的设计中使用了装饰模式,每一个嵌套在内的类都提供了自己的功能。所以如果你不懂装饰模式,理解这些过于困难。
可以参考下面这个链接,简单理解装饰模式

还有这篇对IO总结的很好的博文,可以先看一遍有个大致的理解再去看书Java IO总结

创建对象的要点

来自上面的设计模式博文

理解了装饰模式,再掌握Java IO 中那些类属于继承类,哪些类属于装饰器类,就知晓如何创建文件对象了。

输入输出字节流

输入输出字节流

输入字节流

继承类是基本类,装饰类是用来给基本类增加功能的,比如果篮是基本类,水果是装饰类

    Basket basket=new Orange(new Apple(new Basket()));

整个流程可以表示为

  1. 创建一个果篮
  2. 果篮中放入苹果
  3. 在2中放入橘子
    通过一点一点的装饰为果篮添加功能
    继承类有:
  • ByteArrayInputArray
  • StringBufferInputStream
  • FileInputStream

装饰类有:

  • ObjectInputStream
  • FilterInputStream及其子类

输出字节流

继承类有:

  • ByteArrayOutputStream
  • FileOutputStream

装饰类有:

  • ObjectOutputStream
  • FilterOutputStream及其子类

输入输出字符流

输入输出字符流

输入字符流

继承类:

  • CharReader
  • StringReader

装饰类:

  • BufferedReader
  • FilterReader

InputStreamReader是连接字符流和字节流的桥梁,FileReader用来将FileInputStream转变为Reader。

输出字符流

继承类:

  • CharArrayWriter
  • StringWriter

装饰类:

  • Buffered

OutputStreamWriter是连接OutputStream到Writer的桥梁。


等理解加深一点再来修改

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,779评论 18 399
  • (一)Java部分 1、列举出JAVA中6个比较常用的包【天威诚信面试题】 【参考答案】 java.lang;ja...
    独云阅读 7,144评论 0 62
  • 一、流的概念和作用。 流是一种有顺序的,有起点和终点的字节集合,是对数据传输的总成或抽象。即数据在两设备之间的传输...
    布鲁斯不吐丝阅读 10,106评论 2 95
  • 一二三_四五阅读 146评论 0 0
  • 使用活动理论来描述社会系统,会发现社会活动具有丰富的层次。当这两个层次活动系统目标一致的时候,会产生有价值的结果;...
    Zhoumo01阅读 356评论 0 2