推荐链接:
总结——》【Java】
总结——》【Mysql】
总结——》【Redis】
总结——》【Kafka】
总结——》【Spring】
总结——》【SpringBoot】
总结——》【MyBatis、MyBatis-Plus】
总结——》【Linux】
总结——》【MongoDB】
总结——》【Elasticsearch】
Java——》IO
- 一、概念
- 二、分类
- 三、关系类图
- 1、InputStream
- 2、OutputStream
- 3、Reader
- 4、Writer
 
- 四、设计模式
- 五、IO 模型
一、概念
Java IO(Input/Output)是Java编程语言中用于处理输入和输出的一组类和接口。
输入:数据输入到计算机内存的过程。
 输出:计算机输出到外部(数据库、文件)的过程。
数据传输过程类似水流,因此称为IO流。
二、分类
Java IO 分为输入流和输出流 ,而根据数据的处理方式又分为字节流 和字符流。
- 字节流:以字节为单位进行操作,适用于处理- 二进制数据
- 字符流:以字符为单位进行操作,适用于处理- 文本数据
| 类 | 描述 | 
|---|---|
| InputStream | 字节输入流 | 
| OutputStream | 字节输出流 | 
| Reader | 字符输入流 | 
| Writer | 字符输出流 | 

三、关系类图
1、InputStream

2、OutputStream

3、Reader

4、Writer

四、设计模式
在IO的设计中其实也穿插了很多设计模式的应用:
- 装饰器模式
- 观察者模式
- 适配器模式
- 工厂模式
五、IO 模型
| IO 模型 | 描述 | 
|---|---|
| BIO = Blocking I/O | 同步阻塞 IO 模型 | 
| NIO = Non-blocking/New I/O | 同步非阻塞 IO 模型 , I/O 多路复用模型 | 
| AIO = Asynchronous I/O | 异步 IO 模型 | 



















