引言IO(Input/Output) 方面的基本知识,相信大家都不陌生,毕竟这也是在学习编程基础时就已经接触过的内容,但最初的 IO 教学大多数是停留在最基本的 BIO ,而并未对于 NIO、AIO 、多路复用等的高级内容进行详细讲述,但这些却是大部分高性能技术的底层核心,因此本
Java IO 的演变之路。与 NIO 不同的是,当 AIO 进行读写操作时,只须直接调用 API 的 read 或 write 方法即可,这两种方法均为异步的,对于读操作而言,当有流可读的时候,操作系统会将可读的流传入 read 方法的缓冲区,对于写操作而言,当操作系统将 write 方法传递的流写入完毕时,操作系统主动通知应用程序。
在使用传统的 I/O 操作时,比如 InputStream/OutputStream ,通常是将数据暂存到 byte 或者 char 中,亦或者从 byte 或者 char 中来获取数据,但是在 Java 语言中对 array 数组自身提供的可操作的 API 非常少,常用的操作仅仅是 length 属性和下标,如果相对数组中的数据进行更高级的操作,需要自己写代码来实现,处理方式比较原始。