推荐链接:
总结——》【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 模型 |