chore: import upstream snapshot with attribution
Docs Test / Test docs (push) Failing after 1s

This commit is contained in:
wehub-resource-sync
2026-07-13 11:57:49 +08:00
commit bdaa917396
606 changed files with 153120 additions and 0 deletions
+114
View File
@@ -0,0 +1,114 @@
---
title: Java 知识体系:基础、集合、并发、JVM、IO 与新特性
description: Java 面试与知识体系学习路线,涵盖 Java 基础、集合源码、并发编程、JVM、IO/NIO 和 Java 新特性,适合校招、社招和 Java 后端面试复习。
category: Java
tag:
- Java
- Java基础
- Java面试
sitemap:
changefreq: weekly
priority: 0.95
head:
- - meta
- name: keywords
content: Java,Java基础,Java集合,Java并发,JVM,Java IO,Java NIO,Java新特性,Java面试题,Java后端面试
---
<!-- @include: @small-advertisement.snippet.md -->
这份 **Java 知识体系** 面向 Java 后端学习和面试复习,按“基础语法 -> 集合容器 -> 并发编程 -> IO/NIO -> JVM -> 新特性”的顺序整理本站 Java 相关文章。
如果你时间有限,建议先看 Java 基础、集合、并发和 JVM 的面试题总结,快速建立高频问题清单;如果你想系统补基础,可以按下面的专题顺序阅读。
## 适合谁看
- 正在系统学习 Java 的后端开发者。
- 准备校招、社招、中大厂 Java 后端面试的同学。
- 想把 Java 基础、集合、并发、JVM、IO 和新特性串起来复习的读者。
- 已经写过 Java 项目,但对底层原理、源码设计和工程实践理解不够系统的工程师。
## 学习重点
- Java 基础语法、面向对象、异常、泛型、反射、代理、序列化等核心机制。
- List、Map、Queue、并发容器的使用边界、源码实现和常见面试题。
- Java 线程、锁、JMM、CAS、AQS、线程池、CompletableFuture 和虚拟线程。
- JVM 内存区域、类加载、垃圾回收、参数配置、监控工具和线上问题排查。
- BIO、NIO、AIO、IO 模型,以及装饰器、适配器等 IO 相关设计模式。
- Java 8 到 Java 26 的重要新特性,以及哪些特性真正影响日常开发。
## 建议阅读顺序
1. [Java 基础专题](./basis/):先掌握语法、面向对象、泛型、反射、代理、序列化等基础能力。
2. [Java 集合专题](./collection/):理解 ArrayList、LinkedList、HashMap、ConcurrentHashMap 等常用容器的使用和源码。
3. [Java 并发编程专题](./concurrent/):系统学习线程、锁、JMM、CAS、AQS、线程池和并发工具类。
4. [JVM 专题](./jvm/):理解内存区域、类加载、垃圾回收、JVM 参数和线上排查。
5. [Java IO 专题](./io/):补齐 BIO、NIO、AIO、Reactor、多路复用和 IO 设计模式。
6. [Java 新特性专题](./new-features/):按版本梳理 Lambda、Stream、模块化、var、Record、虚拟线程等关键特性。
## 核心文章
### Java 基础
- [Java 基础专题](./basis/):从基础语法讲到核心机制和常见 Java 面试题。
- [Java基础常见面试题总结(上)](./basis/java-basic-questions-01.md):覆盖 Java 语言特点、基础语法、面向对象和常用类。
- [Java基础常见面试题总结(中)](./basis/java-basic-questions-02.md):继续梳理异常、泛型、反射、注解和常见细节。
- [Java基础常见面试题总结(下)](./basis/java-basic-questions-03.md):补齐高级基础知识和常见易错点。
- [Java 值传递详解](./basis/why-there-only-value-passing-in-java.md):厘清值传递、引用变量和对象修改之间的关系。
- [Java 序列化详解](./basis/serialization.md):理解序列化机制、serialVersionUID、安全风险和替代方案。
- [Java 反射机制详解](./basis/reflection.md) 和 [Java 代理模式详解](./basis/proxy.md):掌握框架底层常见机制。
### Java 集合
- [Java 集合专题](./collection/):串联集合框架、使用注意事项和常见源码分析。
- [Java集合常见面试题总结(上)](./collection/java-collection-questions-01.md) 和 [Java集合常见面试题总结(下)](./collection/java-collection-questions-02.md):覆盖 List、Set、Map、Queue 和并发集合高频问题。
- [Java集合使用注意事项总结](./collection/java-collection-precautions-for-use.md):总结集合判空、遍历、扩容、线程安全和性能相关注意点。
- [ArrayList 源码分析](./collection/arraylist-source-code.md)、[HashMap 源码分析](./collection/hashmap-source-code.md)、[ConcurrentHashMap 源码分析](./collection/concurrent-hash-map-source-code.md):从源码理解常用容器的设计取舍。
### Java 并发
- [Java 并发编程专题](./concurrent/):围绕线程、锁、内存模型、线程池和并发工具展开。
- [Java并发常见面试题总结(上)](./concurrent/java-concurrent-questions-01.md)、[Java并发常见面试题总结(中)](./concurrent/java-concurrent-questions-02.md)、[Java并发常见面试题总结(下)](./concurrent/java-concurrent-questions-03.md):建立并发面试问题清单。
- [JMMJava 内存模型)详解](./concurrent/jmm.md):理解可见性、原子性、有序性和 happens-before。
- [CAS 详解](./concurrent/cas.md)、[AQS 详解](./concurrent/aqs.md)、[Java 线程池详解](./concurrent/java-thread-pool-summary.md):掌握并发底层高频考点。
- [虚拟线程常见问题总结](./concurrent/virtual-thread.md):理解 Project Loom 对并发模型的影响。
### JVM 与 IO
- [JVM 专题](./jvm/):围绕内存、类加载、GC、参数、工具和线上排查展开。
- [Java内存区域详解(重点)](./jvm/memory-area.md):理解程序计数器、虚拟机栈、本地方法栈、堆和方法区。
- [JVM垃圾回收详解(重点)](./jvm/jvm-garbage-collection.md):理解对象存活判断、垃圾收集算法和主流垃圾收集器。
- [类加载过程详解](./jvm/class-loading-process.md) 和 [类加载器详解(重点)](./jvm/classloader.md):掌握类生命周期和双亲委派模型。
- [Java IO 专题](./io/):从 BIO、NIO、AIO 讲到 IO 模型和 IO 设计模式。
- [Java IO 基础知识总结](./io/io-basis.md)、[Java NIO 核心知识总结](./io/nio-basis.md)、[Java IO 模型详解](./io/io-model.md):补齐网络编程和中间件学习前置知识。
### Java 新特性
- [Java 新特性专题](./new-features/):按版本梳理 Java 8 之后的重要语言、标准库和 JVM 特性。
- [Java8 新特性实战](./new-features/java8-common-new-features.md):掌握 Lambda、Stream、Optional、接口默认方法和新日期 API。
- [Java 11 新特性概览(重要)](./new-features/java11.md)、[Java 17 新特性概览(重要)](./new-features/java17.md)、[Java 21 新特性概览(重要)](./new-features/java21.md):优先关注 LTS 版本中的长期可用特性。
## 高频问题
- Java 为什么是值传递?对象引用作为参数传递时到底发生了什么?
- `String``StringBuilder``StringBuffer` 有什么区别?
- `equals()``hashCode()` 有什么关系?
- `ArrayList``LinkedList` 如何选择?`HashMap` 为什么线程不安全?
- `ConcurrentHashMap` 在 JDK 7 和 JDK 8 中有什么变化?
- `synchronized``ReentrantLock` 有什么区别?
- JMM 如何保证可见性、有序性和原子性?
- 线程池核心参数如何配置?为什么不建议直接使用 `Executors`
- JVM 内存区域如何划分?哪些区域可能发生 OOM?
- G1、ZGC、Shenandoah 分别适合什么场景?
- BIO、NIO、AIO 有什么区别?Reactor 模型解决什么问题?
- Java 8、11、17、21 中哪些新特性最值得掌握?
## 相关专题
- [计算机基础](../cs-basics/)
- [系统设计](../system-design/)
- [数据库](../database/)
- [分布式系统知识体系](../distributed-system/)
- [高性能系统知识体系](../high-performance/)
<!-- @include: @article-footer.snippet.md -->