04 IO流(二)——IO类的记忆方法、使用场景

关于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

posted @ 2019-11-21 22:24  Scorpicat  阅读(271)  评论(0编辑  收藏  举报