GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — JavaGuide/docs/java/io at main · NotAFlightRisk/JavaGuide

Expand file tree

/

io

/
Copy path

Directory actions

More options

More options

Directory actions

More options

More options

Latest commit

 

History

History
History
 
 
/

io

/
Copy path

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
README.md
README.md
 
 
io-basis.md
io-basis.md
 
 
io-design-patterns.md
io-design-patterns.md
 
 
io-model.md
io-model.md
 
 
nio-basis.md
nio-basis.md
 
 

README.md

Outline
title Java IO 专题:BIO、NIO、AIO、IO 模型与设计模式
description Java IO 与 NIO 学习路线,涵盖 BIO、NIO、AIO、阻塞/非阻塞、同步/异步、I/O 多路复用、Reactor 模型和 IO 设计模式。
category Java
tag
Java
Java IO
Java面试
sitemap
changefreq priority
weekly
0.9
head
meta
name content
keywords
Java IO,Java NIO,BIO,NIO,AIO,IO模型,I/O多路复用,Reactor,Selector,Channel,Buffer,Java IO面试题

Java IO 是理解文件读写、网络编程、Netty、RPC 框架和高性能服务端的重要基础。学习 IO 时,建议同时理解 Java API、操作系统 IO 模型和常见设计模式,这样才能把 BIO、NIO、AIO、Selector、Channel、Buffer、Reactor 串起来。

适合谁看

  • 想系统学习 Java IO/NIO 的后端开发者。
  • 准备 BIO、NIO、AIO、IO 多路复用、Reactor 相关面试题的同学。
  • 想继续学习 Netty、RPC、消息队列、数据库驱动等网络通信框架的读者。
  • 对阻塞/非阻塞、同步/异步、Selector、Channel、Buffer 等概念容易混淆的工程师。

学习重点

  • Java IO 流体系、字节流、字符流、缓冲流和常见文件操作。
  • 装饰器模式、适配器模式等设计模式在 IO 中的应用。
  • BIO、NIO、AIO 的模型差异、适用场景和优缺点。
  • 同步/异步、阻塞/非阻塞、I/O 多路复用、Reactor 和 Proactor。
  • Buffer、Channel、Selector 的协作关系,以及它们在网络编程中的作用。

建议阅读顺序

  1. Java IO 基础知识总结:先掌握 IO 流体系、常用类和文件读写基础。
  2. Java IO 设计模式总结:理解装饰器模式、适配器模式等设计模式如何落到 IO API 中。
  3. Java IO 模型详解:厘清 BIO、NIO、AIO、同步/异步、阻塞/非阻塞和多路复用。
  4. Java NIO 核心知识总结:深入学习 Buffer、Channel、Selector 和 NIO 编程模型。

核心文章

  • Java IO 基础知识总结:系统介绍字节流、字符流、缓冲流、随机访问文件和常见 IO 类。
  • Java IO 设计模式总结:讲解装饰器模式、适配器模式等设计模式在 IO 中的应用。
  • Java IO 模型详解:区分 BIO、NIO、AIO、同步/异步、阻塞/非阻塞和 I/O 多路复用。
  • Java NIO 核心知识总结:理解 Buffer、Channel、Selector、SelectionKey 和 NIO 服务端编程。

高频问题

  • 字节流和字符流有什么区别?什么时候使用缓冲流?
  • Java IO 中为什么大量使用装饰器模式?
  • BIO、NIO、AIO 有什么区别?
  • 同步和异步、阻塞和非阻塞分别是什么意思?
  • I/O 多路复用解决了什么问题?
  • select、poll、epoll 有什么区别?
  • Reactor 模型是什么?和 Proactor 有什么区别?
  • NIO 中 Buffer、Channel、Selector 分别承担什么职责?
  • 为什么 Netty 基于 NIO 构建,而不是直接使用传统 BIO?

相关专题

  • Java 知识体系
  • Java 并发编程专题
  • JVM 专题
  • 计算机网络
  • Netty
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.