在谈及I/O流之前,先谈一下流;流是一种抽象概念;数据通过流来传递就是将对数据进行编码转为字节序列;I/O流就是数据的输入INPUT与数据的输出OUTPUT.
I/O有多种表现形式;鄙人按照字节/字符/基本数据形式将其进行分类
字节流 | 字符流 | 基本数据流 | |
基类|接口 | Inputstream/Outputstream | Reader/Writer | datainput/dataoutput |
文件【上传/下载】 | FileInputstream/FileOutputstream | FileReader/FileWriter | |
缓存【提高传输速度】 | BufferInputstream/BufferOutputstream | BufferReader/BufferWriter | |
管道(线程【输入与输出各自创建线程,否则容易死锁】) | PipeInputstream/PipeOutputstream | PipeReader/PipeWriter | |
打印 | PrintStream | PrintWriter | |
多线程(无需特地创建线程) | (ByteBuffer 搭配使用)RandomAccessFile | ||
序列化的类 | ObjectInputStream/ObjectOutputStream |