跳至主要內容
Java NIO 核心知识总结

在学习 NIO 之前,需要先了解一下计算机 I/O 模型的基础理论知识。还不了解的话,可以参考我写的这篇文章:Java IO 模型详解

NIO 简介

在传统的 Java I/O 模型(BIO)中,I/O 操作是以阻塞的方式进行的。也就是说,当一个线程执行一个 I/O 操作时,它会被阻塞直到操作完成。这种阻塞模型在处理多个并发连接时可能会导致性能瓶颈,因为需要为每个连接创建一个线程,而线程的创建和切换都是有开销的。


Guide大约 13 分钟JavaJava IOJava基础
Java IO 基础知识总结

这是一则或许对你有用的小广告

  • 面试专版:准备 Java 面试的小伙伴可以考虑面试专版:《Java 面试指北 》 (质量非常高,专为面试打造,配合 JavaGuide 食用效果最佳)。
  • 知识星球:技术专栏/一对一提问/简历修改/求职指南/面试打卡/不定时福利,欢迎加入 JavaGuide 官方知识星球

Guide大约 16 分钟JavaJava IOJava基础
Java IO 设计模式总结

这篇文章我们简单来看看我们从 IO 中能够学习到哪些设计模式的应用。

装饰器模式

装饰器(Decorator)模式 可以在不改变原有对象的情况下拓展其功能。

装饰器模式通过组合替代继承来扩展原始类的功能,在一些继承关系比较复杂的场景(IO 这一场景各种类的继承关系就比较复杂)更加实用。

对于字节流来说, FilterInputStream (对应输入流)和FilterOutputStream(对应输出流)是装饰器模式的核心,分别用于增强 InputStreamOutputStream子类对象的功能。


Guide大约 8 分钟JavaJava IOJava基础
Java IO 模型详解

IO 模型这块确实挺难理解的,需要太多计算机底层知识。写这篇文章用了挺久,就非常希望能把我所知道的讲出来吧!希望朋友们能有收获!为了写这篇文章,还翻看了一下《UNIX 网络编程》这本书,太难了,我滴乖乖!心痛~

个人能力有限。如果文章有任何需要补充/完善/修改的地方,欢迎在评论区指出,共同进步!

前言

I/O 一直是很多小伙伴难以理解的一个知识点,这篇文章我会将我所理解的 I/O 讲给你听,希望可以对你有所帮助。

I/O

何为 I/O?

I/O(Input/Outpu) 即输入/输出


Guide大约 6 分钟JavaJava IOJava基础