跳到主要内容
查看 Outline 目录

R01 / Java Backend

Java 后端开发面试路线

这条路线把 Java 后端面试拆成 8 个阶段、40 个 Topic。它不是完整知识清单:先用“必会”建立能够直接作答的核心框架,再根据 JD、项目经历和面试反馈补充常考与深入内容。

第一轮19 个必会 Topic44 篇核心阅读
回答深度基础回答原理解释场景分析
面试优先级必会常考按岗选学

优先级决定先学什么;回答深度决定学到哪里。深度不是候选人职级。“按岗选学”只在目标岗位明确涉及,或能由自己的项目经历支撑时进入。

01

Java 语言与标准库

先建立稳定的语言模型。框架会变化,类型、对象和异常语义不会替你一起变化。

基础必会
01类型系统与对象模型Java基础回答必会

解释对象如何协作,并根据变化方向选择组合、继承、接口或抽象类。

2 / 3 篇
02字符串、数值与异常Java基础回答必会

正确处理不可变值、精度、空值和失败路径,避免把数据问题拖到生产环境。

2 / 5 篇
03泛型、注解与反射Java原理解释常考

理解编译期类型约束如何落到运行时,并解释框架为何能够发现和调用用户代码。

2 / 4 篇
04I/O、NIO 与资源管理Java基础回答常考

根据数据规模和阻塞模型选择 I/O API,并保证资源在失败路径上也能释放。

2 / 4 篇
05Lambda、Stream 与日期时间Java基础回答常考

在可读性和性能边界内使用函数式 API,避免把一条数据管道写成调试盲区。

2 / 5 篇
02

集合、算法与代码质量

集合不是 API 背诵题。选择是否合理,取决于访问模式、数据规模和并发条件。

基础必会
06集合框架与选型Java基础回答必会

根据访问、顺序、去重和队列语义选择集合,并说清复杂度与内存代价。

2 / 5 篇
07HashMap 与 LinkedHashMapJava原理解释必会

从哈希分布、冲突和扩容解释查询性能,并正确实现作为键的对象。

2 / 3 篇
08并发集合Java原理解释常考

根据竞争模式选择并发容器,理解弱一致迭代和复合操作的边界。

2 / 5 篇
09算法实现与复杂度Algorithm基础回答必会

把算法复杂度、边界条件和 Java 实现细节放进同一次推理,而不是分别背答案。

3 / 5 篇
10API 设计、测试与代码质量Engineering基础回答按岗选学

让类型、接口和测试共同约束变化,避免依靠注释维持正确性。

1 / 5 篇
03

JVM 与运行时

JVM 题目的价值不在术语数量,而在于能否把代码、内存、编译和故障证据连起来。

高频原理
11字节码与类加载JVM原理解释常考

说明源码如何变成可执行类,并判断类冲突、初始化和隔离问题出现在哪个阶段。

2 / 5 篇
12运行时内存与对象布局JVM原理解释必会

把对象、栈帧、类元数据和直接内存放回对应区域,并由此判断异常来源。

2 / 5 篇
13垃圾回收与收集器JVM原理解释必会

从存活判断、复制与并发标记解释停顿,并根据延迟和吞吐目标选择收集器。

3 / 5 篇
14JIT 与运行时优化JVM原理解释按岗选学

理解热点代码如何被优化,以及基准、预热和去优化为什么会改变观测结果。

1 / 5 篇
15JVM 性能诊断JVM场景分析常考

从症状选择线程、堆、GC 或运行时证据,用排除法缩小故障范围。

2 / 5 篇
04

并发与 Java 内存模型

并发问题来自共享状态和执行顺序。工具很多,证据最终仍要回到这两件事。

高频原理
16线程、竞态与 JMMJUC原理解释必会

区分原子性、可见性和有序性,并用 happens-before 判断跨线程结果。

3 / 5 篇
17synchronized、volatile 与 CASJUC原理解释必会

根据临界区和状态转换选择同步机制,而不是把 volatile 当成轻量锁。

2 / 5 篇
18Lock、AQS 与并发工具JUC原理解释常考

从同步状态和等待队列理解 Lock、Latch、Semaphore 与读写锁。

2 / 5 篇
19线程池与异步编排JUC场景分析必会

根据任务时间和资源上限配置执行器,并让过载通过队列与拒绝策略显式暴露。

2 / 3 篇
20并发故障与性能诊断JUC场景分析常考

识别死锁、活锁、饥饿、线程泄漏和上下文切换,并用时间线证明原因。

2 / 4 篇
05

Spring 与数据访问

从一次请求进入容器,再沿代理、事务和持久化返回。框架原理应该落在这条链路上。

高频框架
21Spring IoC 与 Bean 生命周期Spring原理解释必会

解释对象创建为何交给容器,并判断作用域、生命周期和循环依赖问题。

2 / 5 篇
22AOP、代理与声明式事务Spring原理解释必会

沿代理调用链解释切面如何生效,并识别事务、缓存和异步注解的失效边界。

2 / 3 篇
23Spring MVC 与 Web 请求链Spring原理解释必会

跟踪请求从连接进入 Controller 再到响应的路径,并放置正确的校验、鉴权和异常处理。

2 / 5 篇
24Spring Boot 自动配置与启动Spring Boot原理解释必会

解释自动配置为何生效、如何覆盖,并在启动失败时定位条件与配置来源。

2 / 5 篇
25MyBatis、JPA 与连接池Data Access原理解释必会

根据查询复杂度和领域模型选择持久化方式,并控制连接、事务和批处理成本。

2 / 5 篇
06

网络、数据与服务端生态

服务端组件不是购物清单。每增加一个组件,都要说明它解决的问题和新增的故障模式。

后端基础
26TCP、HTTP、RPC 与 NettyNetwork原理解释必会

从连接、协议和线程模型解释一次远程调用的延迟、超时与资源占用。

3 / 5 篇
27MySQL 索引与查询优化Database原理解释必会

理解索引如何缩小扫描范围,并用执行计划验证联合索引与查询改写。

2 / 5 篇
28事务、锁与 MVCCDatabase原理解释必会

解释隔离级别如何约束并发读写,以及锁与多版本分别处理什么问题。

3 / 5 篇
29Redis 与缓存一致性Middleware场景分析必会

根据访问模式决定是否缓存,并处理失效、热点和数据库一致性代价。

3 / 5 篇
07

微服务与生产治理

微服务把进程内问题变成网络和组织问题。拆分容易,稳定地运行才是主要成本。

按 JD 选学
31注册、配置、网关与流量治理Microservices场景分析常考

理解服务实例如何被发现、配置和路由,并控制变更传播范围。

2 / 5 篇
32超时、重试、限流与熔断Reliability场景分析常考

为失败设置明确预算,避免局部变慢经由重试和排队扩散为系统故障。

2 / 5 篇
33分布式事务与数据一致性Distributed Data场景分析常考

从业务不变量选择强一致、补偿或事件驱动方案,并设计可恢复的中间状态。

2 / 5 篇
34认证、授权与应用安全Security场景分析常考

把身份、权限、输入和密钥放到明确边界,避免依赖网络位置作为信任证明。

2 / 5 篇
35可观测性、交付与联合排障Production场景分析常考

让代码经过可重复构建进入环境,并用日志、指标和追踪解释生产故障。

2 / 5 篇
08

系统设计与架构面试

只在目标岗位明确考察系统设计或架构经验时进入。回答重点是约束、取舍、迁移路径和故障恢复。

架构岗位选学
36系统设计方法与容量System Design场景分析按岗选学

从需求、规模和可靠性目标出发,完成容量估算、边界拆分与关键选型。

1 / 5 篇
37复制、一致性与共识Distributed Systems场景分析按岗选学

在节点故障和网络分区条件下,判断复制、一致性与可用性的真实边界。

1 / 5 篇
38DDD、模块化单体与微服务Architecture场景分析按岗选学

按业务变化和团队边界划分模块,避免用部署单元替代领域分析。

1 / 5 篇
39高可用、容灾、多租户与成本Architecture场景分析按岗选学

把可靠性目标、恢复能力、租户隔离和资源成本放进同一份架构预算。

1 / 5 篇
40架构演进与技术决策Architecture场景分析按岗选学

在架构面试中说明技术决策、迁移步骤、回滚条件和失败后的修正方式。

1 / 5 篇
Java

类型系统与对象模型

解释对象如何协作,并根据变化方向选择组合、继承、接口或抽象类。

基础回答必会核心 2 / 共 3 篇

核心结论

类定义状态与行为,运行时通过动态绑定选择实际方法。封装限制状态的修改入口,多态则把调用方与具体实现分开。抽象带来替换能力,也会增加间接层。

复习到这里

  • 能说明基本类型、引用类型、值传递和对象身份之间的关系。
  • 能用业务变化解释组合、继承、接口和抽象类的选择。

自测问题

  • Java 为什么只有值传递?传入对象后修改字段为什么仍然可见?
  • 重载、重写和动态绑定分别发生在什么阶段?

核心阅读

  1. Java 值传递
  2. 面向对象编程(Object-Oriented Programming)
深入阅读(1 篇)
  1. 对象相等性