Java修炼——IO流的概念以及其分类

IO流的基本概念:
流的原理:
Java修炼——IO流的概念以及其分类_第1张图片
1) 在 Java 程序中,对于数据的输入/输出操作以“流”
(stream) 方式进行;
2) J2SDK 提供了各种各样的“流”类,用以获取不同种类的
数据;程序中通过标准的方法输入或输出数据。
3) Java 的流类型一般位于 java.io 包中

流的概念:
数据源:

  1. data source. 提供原始数据的原始媒介。常见的:数据库、
    文件、其他程序、内存、网络连接、IO 设备。

  2. 数据源就像水箱,流就像水管中流着的水流,程序就是我
    们最终的用户。 流是一个抽象、动态的概念,是一连串
    连续动态的数据集合
    Java修炼——IO流的概念以及其分类_第2张图片
    流的分类
    一.按流的方向分:

    1. 输入流:数据源到程序(InputStream、Reader 读进来)
    2. 输出流:程序到目的地(OutPutStream、Writer 写出去)**

    二,按处理数据单元分:

    1. 字节流:按照字节读取数据(InputStream、OutputStream)
    2. 字符流:按照字符读取数据(Reader、Writer)
      注意: 输入输出是相对于程序而言,而不是相对于源和目标而言
      Java修炼——IO流的概念以及其分类_第3张图片

三,按功能不同:

  1. 节点流:可以直接从数据源或目的地读写数据。
  2. 处理流(包装流):不直接连接到数据源或目的地,是其他
    流进行封装。目的主要是简化操作和提高性能.

字节流和数据流的关系:

  1. 节点流处于 io 操作的第一线,所有操作必须通过他们进行;
  2. 处理流可以对其他流进行处理(提高效率或操作灵活性).

四大抽象类:
InputStream 和 和 OutputStream
Reader和Writer

你可能感兴趣的:(Java学习,不忘初心,方得始终)