IO流,Java的输入(input)输出流(output)
Java中的流是对字节序列的抽象,我们可以想象有一个水管,只不过现在流动在水管中的不再是水,而是字节序列。和水流一样,Java中的流也具有一个“流动的方向”,通常可以从中读入一个字节序列的对象被称为输入流;能够向其写入一个字节序列的对象被称为输出流;
主要包含三个部分:
流式部分--IO主体部分;
非流式部分--主要包含一些辅助流式部分的类;
文件读取部分的与安全相关的类以及与本地操作系统相关的文件系统的类;
派生类就是子类;
字节流与字符流之间可以相互转换;
缓冲区:提高效率,减少磁盘的IO操作;
InputStream 和OutputStream,两个是为字节流设计的,主要用来处理字节或二进制对象;
Reader和 Writer.两个是为字符流(一个字符占两个字节)设计的,主要用来处理字符或字符串;
字节流可用于任何类型的对象,包括二进制对象,而字符流只能处理字符或者字符串;
字节流提供了处理任何类型的IO操作的功能,但它不能直接处理Unicode字符,而字符流就可以;



