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
+90
View File
@@ -0,0 +1,90 @@
---
title: Java 基础专题:语法、面向对象、泛型、反射、代理与序列化
description: Java 基础面试与学习路线,涵盖基础语法、面向对象、关键字、值传递、泛型、反射、代理、序列化、SPI、Unsafe 和语法糖。
category: Java
tag:
- Java
- Java基础
- Java面试
sitemap:
changefreq: weekly
priority: 0.9
head:
- - meta
- name: keywords
content: Java基础,Java基础面试题,Java关键字,Java值传递,Java泛型,Java反射,Java代理,Java序列化,Java SPI,Java Unsafe,Java语法糖
---
Java 基础是后续学习集合、并发、JVM、Spring 和各类中间件的前置能力。这部分内容不只是背语法,更重要的是理解 Java 的对象模型、参数传递、泛型擦除、反射调用、动态代理、序列化边界和框架扩展机制。
## 适合谁看
- 刚开始系统学习 Java,想把基础语法和核心机制串起来的读者。
- 准备 Java 基础面试题,希望快速查漏补缺的同学。
- 已经写过 Java 项目,但对反射、代理、泛型、SPI、序列化等机制理解不深的开发者。
- 想继续学习集合、并发、JVM、Spring 源码前,需要补齐前置知识的工程师。
## 学习重点
- Java 基本语法、面向对象、异常、常用类、关键字和编码细节。
- 值传递、引用变量、对象可变性和方法调用之间的关系。
- 泛型、通配符、类型擦除以及它们对集合、API 设计和反射的影响。
- 反射、动态代理、SPI 等框架底层常见机制。
- 序列化、`BigDecimal``Unsafe`、语法糖等容易在项目和面试中踩坑的知识点。
## 建议阅读顺序
1. [Java基础常见面试题总结(上)](./java-basic-questions-01.md):先过一遍 Java 基础语法、面向对象和常用类。
2. [Java基础常见面试题总结(中)](./java-basic-questions-02.md) 和 [Java基础常见面试题总结(下)](./java-basic-questions-03.md):补齐异常、泛型、反射、注解和常见易错点。
3. [Java 关键字总结](./java-keyword-summary.md) 和 [Java 值传递详解](./why-there-only-value-passing-in-java.md):厘清基础概念中的高频误区。
4. [泛型&通配符详解](./generics-and-wildcards.md)、[Java 反射机制详解](./reflection.md)、[Java 代理模式详解](./proxy.md):理解框架底层常见能力。
5. [Java 序列化详解](./serialization.md)、[Java SPI 机制详解](./spi.md)、[Java 魔法类 Unsafe 详解](./unsafe.md):继续补齐工程实践和源码阅读中的扩展知识。
## 核心文章
### 基础面试题
- [Java基础常见面试题总结(上)](./java-basic-questions-01.md):覆盖 Java 语言特点、基础语法、面向对象、常用类和常见易错点。
- [Java基础常见面试题总结(中)](./java-basic-questions-02.md):继续梳理异常、泛型、反射、注解等基础能力。
- [Java基础常见面试题总结(下)](./java-basic-questions-03.md):补齐更偏细节和进阶的基础面试题。
### 语言机制
- [Java 关键字总结](./java-keyword-summary.md):讲清 `final``static``this``super` 等关键字。
- [Java 值传递详解](./why-there-only-value-passing-in-java.md):解释 Java 为什么只有值传递,以及引用变量传参时的真实语义。
- [泛型&通配符详解](./generics-and-wildcards.md):理解泛型语法、上下界通配符、类型擦除和常见使用场景。
- [Java 语法糖详解](./syntactic-sugar.md):了解编译器如何处理增强 for、自动装箱拆箱、枚举、Lambda 等语法糖。
### 框架底层机制
- [Java 反射机制详解](./reflection.md):理解 Class 对象、反射调用、性能开销和使用场景。
- [Java 代理模式详解](./proxy.md):掌握静态代理、JDK 动态代理和 CGLIB 代理。
- [Java SPI 机制详解](./spi.md):理解服务发现和插件化扩展机制。
- [Java 序列化详解](./serialization.md):理解序列化流程、serialVersionUID、安全风险和替代方案。
### 实用细节
- [BigDecimal 详解](./bigdecimal.md):掌握金额计算、精度、舍入模式和构造方式的注意点。
- [Java 魔法类 Unsafe 详解](./unsafe.md):了解堆外内存、CAS、对象字段偏移和源码中的底层能力。
## 高频问题
- Java 是值传递还是引用传递?对象作为参数传递时为什么能修改字段?
- `==``equals()` 有什么区别?为什么重写 `equals()` 必须重写 `hashCode()`
- `String``StringBuilder``StringBuffer` 如何选择?
- `final``static``this``super` 分别有什么作用?
- 泛型擦除是什么?`List<String>``List<Integer>` 在运行时有什么区别?
- 反射为什么慢?有哪些典型使用场景?
- JDK 动态代理和 CGLIB 动态代理有什么区别?
- 为什么不建议直接使用 Java 原生序列化?
- `BigDecimal` 为什么推荐用字符串构造?
## 相关专题
- [Java 知识体系](../)
- [Java 集合专题](../collection/)
- [Java 并发编程专题](../concurrent/)
- [JVM 专题](../jvm/)
- [Spring](../../system-design/framework/spring/)
<!-- @include: @article-footer.snippet.md -->