Java 学习备份 - NIO

前面学习了 I/O 流,是 java.io 里的包,了解到 java 在 14 版本后新加入了一套 I/O 流 ,在 java.nio 包中,与传统 I/O 流相比,我认为最主要区别有两个:抽象出几个对象,分别是 Channel 、Buffer 和 Selector,他们分别的作用接下来会讲到。针对两个场景做了优化,一是读写文件的场景,在传统 I/O 流 中,对文件读和写是需要两个流,而在 NIO

- 阅读全文 -

Java 学习备份-源码分析 PipedOutputStream 与 PipedInputStream

之前简单介绍了一下 Java 中的 IO 流 机制,和几种 IO 流 的特性和使用场景,在分析的时候看到一些 IO 流 的代码写的挺不错的,来简单分析几个的源码把,今天先看看 PipedOutputStream 和 PipedInputStream。引子这两个 IO 流,的主要特点是支持相互连接,其他 IO 流基本上读和写都是一边的,另一边是一个固定的地方。而如果你把 PipedInputrStr

- 阅读全文 -

Java 学习备份 - IO流

因为工作室给新人培训要将到网络编程,想着布置一道 Socket 实现聊天平台的作业,想自己先写写。过程中遇到了 io 流 选择的问题,觉得这个应该挺重要的,花点时间研究了一下各种 IO 流 的源码,来记录一下,以后可以用到。IO 流流是一种抽象概念,可以看成一个水流,而 Java 的 IO 流工具分为 输入流 和 输出流 ,输入流 是外界向你输入数据,而你可以不断地读,这里数据不是分包的,是水流状

- 阅读全文 -