关于IO流以前写的PPT式笔记请跳转:https://blog.csdn.net/SCORPICAT/article/details/87975094#262___1451

IO流的主要结构

记忆方法

先记住四大抽象类

  • Write
  • Reader
  • InputStream
  • OutputStream

四类均有的相似类有

(以下内容阅读时忽略空格)

  • Piped Writer/Reader 与 Piped InputStream/OutputStream
  • Filter Writer/Reader 与 Filter InputStream/OutputStream
  • File Writer/Reader 与File InputStream/OutputStream (比字符流的继承结构高一级,看图)
  • Buffered Writer/Reader 与 Buffered InputStream/OutputStream(比字符流的继承结构低一级,看图)

四类均有的看似相似的有

  • String Writer/Reader 与 StringBufferedInputStream (没有相应的OutputStream)
  • CharArray Writer/Reader 与 ByteArray InputStream/OutputStream

两种输入流才有的

FilterReader下的PushbackReader

FilterInputStream下的PushbackInputStream

两种输出流才有的

PrintWriter 与 PrintStream(比字符流的继承结构低一级,看图)

字符流独有的

InputStreamReader 与 OutputStreamWriter

好像是模仿字节流的

他们下面有FileReader 与 FileWriter

字节流独有的

ObjectInputStream 与 ObjectOutputStream

FilterInputStream下的DataInputStream 与 FilterOutputStream下的DataOutputStream

孤零零的 SequenceInputStream

单独记一下字节流下的Filter系列下的子类

FilterInputStream

  • DataInputStream
  • BufferedInputStream
  • PushbackInputStream

FilterOutputStream

  • DataOutputStream
  • BufferedOutputStream
  • PrintStream

总结

File Filter Bufferd Piped 全都有

CharArray ByteArray好相似

String StringBuffered差得远

输入流有Pushback

输出流有Print呀!

字符流啊机灵鬼

假装自己是 InputStream (OutputStream Reader/Writer)

字节流啊家底厚

独占Data、Object

收养一个Sequence

Sequence没有Output

耶!Peace!

各类的使用场景

https://blog.csdn.net/qq_33394088/article/details/78512407

04 IO流(二)——IO类的记忆方法、使用场景的更多相关文章

  1. IO流,File类的测试........课堂加总结

    package liu0926; import java.io.File; import java.io.IOException; public class Text01 { public stati ...

  2. IO流的工具类

    1.需要先导入jar包: FilenameUtils import org.apache.commons.io.FilenameUtils; public class FilenameUtilesDe ...

  3. IO流----操作文件的9种方法代码实现

    IO流----操作文件的9种方法代码实现: 1:使用字节流读写数据: 四种方式: method1:          每次读写一个字节,边读边写: /* * 复制文本文件. * * 数据源:从哪里来 ...

  4. Java学习之路(十二):IO流<二>

    字符流 字符流是可以直接读写字符的IO流 使用字符流从文件中读取字符的时候,需要先读取到字节数据,让后在转换为字符 使用字符流向文件中写入字符时,需要把字符转为字节在写入文件 Reader和Write ...

  5. IO流(File类,IO流的分类,字节流和字符流,转换流,缓冲流,对象序列化)

    1.File类 File类可以在程序中 操作文件和目录.File类是通过建立File类对象,在调用File类的对象来进行相关操作的. 示例: public class Demo01 { public  ...

  6. IO流之Properties类

    Properties类介绍 Properties 类表示了一个持久的属性集.Properties 可保存在流中或从流中加载.属性列表中每个键及其对应值都是一个字符串. 特点: 1.Hashtable的 ...

  7. Java IO 流--FileUtils 工具类封装

    IO流的操作写多了,会发现都已一样的套路,为了使用方便我们可以模拟commosIo 封装一下自己的FileUtils 工具类: 1.封装文件拷贝: 文件拷贝需要输入输出流对接,通过输入流读取数据,然后 ...

  8. Java IO流(二)

    目录 字节缓冲流 概述 BufferedOutputStream类 继承父类的共性成员方法 构造方法 BufferedInputStream类 继承自父类的方法: 构造方法 文件复制练习(增强版 使用 ...

  9. JAVASE(十六) IO流 :File类、节点流、缓冲流、转换流、编码集、对象流

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 1.File类型 1.1.File类的理解 File类是在java.io包下 File可以理解成一个文件 ...

随机推荐

  1. mnist卷积网络实现

    加载MNIST数据 from tensorflow.examples.tutorials.mnist import input_data mnist = input_data.read_data_se ...

  2. Spring IOC是什么

    IOC 什么是IOC IOC: Inversion of Control(控制反转) 控制反转:将对象的创建权反转给(交给)Spring. 传统开发模式 业务和实现类过于紧密,底层业务要修改源代码 通 ...

  3. Jar hell问题以及解放方法

    当一个类或一个资源文件存在多个jar中,就好存在jar hell问题 可以通过以下代码来诊断问题:

  4. keepalived vip removed with dhcp renewal【原创】

    最近发现公司云平台服务器的vip有丢失的现象,查看keepalived日志 Jun :: lb1 dhclient: DHCPREQUEST of (xid=0x6deab016) Jun :: lb ...

  5. super与this的用法

    1 super和this都是调用其他的构造方法 super放在构造方法的第一条语句,调用父类的某种构造方法,如果没有super语句,会默认调用父类中无参的构造方法,如果父类构造方法指明而且都有参数,子 ...

  6. docker容器日志查看

    日志分两类,一类是 Docker 引擎日志:另一类是 容器日志. Docker 引擎日志 Docker 引擎日志 一般是交给了 Upstart(Ubuntu 14.04) 或者 systemd (Ce ...

  7. 小D课堂 - 零基础入门SpringBoot2.X到实战_第9节 SpringBoot2.x整合Redis实战_40、Redis工具类封装讲解和实战

    笔记 4.Redis工具类封装讲解和实战     简介:高效开发方式 Redis工具类封装讲解和实战         1.常用客户端 https://redisdesktop.com/download ...

  8. cordova run android 可能遇到的错误解决

    运行: ionic cordova build 等待下载,然后根据提示 输入android或者ios平台,即可 运行cordova run android 报错: 最快捷的解决方法就是使用Androi ...

  9. redis最大连接数

    Well, it's a bit late for this post, but since I just spent a lot of time(the whole night) to config ...

  10. Python3基础 函数 参数为list可变类型时,使用append会影响到外部实参

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...