第 27 章:Java 进阶路线与资源
学习目标
- 知道学完基础后该往哪走
- 收藏几个靠谱的资料
- 避免常见的"学完就迷茫"陷阱
一、恭喜你,基础通关了!
学完前 26 章,你已经能:
- ✅ 独立写一个 Java 程序
- ✅ 读懂大多数业务代码
- ✅ 听懂同事 / 面试官说的术语
- ✅ 用集合、流、并发处理实际问题
二、基础阶段没学什么
为了简洁,下面这些有意没讲,遇到了再查:
| 主题 | 为什么没讲 |
|---|---|
| 装箱 / 拆箱细节 | Java 自动处理,会踩坑就够 |
| 反射字节码 | 框架会用,业务用不到 |
| 序列化 | 有 Jackson / Gson 帮你 |
| 图形界面 Swing | 老得掉牙,别碰 |
| Applet | 已删除 |
| JDBC 原始 API | 用 Spring JPA / MyBatis |
三、接下来该学什么
3.1 立刻投入的方向(按优先级)
| 方向 | 时间 | 为什么 |
|---|---|---|
| Spring Boot | 2-3 周 | 后端 Java 必备,99% 公司在用 |
| MySQL + 索引 | 1-2 周 | 90% 业务用到 |
| Redis | 1 周 | 缓存 / 分布式锁 / 限流 |
| Git + Linux | 1 周 | 日常工具 |
| 设计模式 | 2 周 | 写代码更优雅 |
3.2 选型方向(工作 1-2 年后)
| 方向 | 推荐栈 |
|---|---|
| 后端 CRUD | Spring Boot + MySQL + Redis + MyBatis |
| 微服务 | Spring Cloud / Spring Cloud Alibaba |
| 中间件开发 | Netty + Kafka + RocketMQ |
| 大数据 | Flink / Spark(Scala / Java) |
| Android | Kotlin + Jetpack |
3.3 简历加分项
- 写一个 Spring Boot 项目放到 GitHub
- 刷 200 道 LeetCode(基础 + 中等)
- 看一本 Java 进阶书(见下)
四、推荐资料
4.1 必读书
| 书 | 适合 |
|---|---|
| 《Java 核心技术 卷 1》 | 入门,纸书查字典 |
| 《Effective Java》 | 进阶,写更好代码 |
| 《深入理解 Java 虚拟机》 | 面试 / 调优 |
| 《Java 并发编程实战》 | 并发原理 |
4.2 在线资源
| 资源 | 用途 |
|---|---|
| 廖雪峰 Java 教程 | 入门巩固 |
| Spring 官方文档 | 框架查阅 |
| Stack Overflow | 排错 |
| LeetCode | 刷算法 |
4.3 视频
不推荐具体视频(质量参差不齐),挑个播放量高的跟着敲就行。
五、面试高频题(挑 20 个看)
java
// 1. HashMap 原理
// 2. ConcurrentHashMap 原理
// 3. volatile / synchronized 区别
// 4. 线程池七大参数
// 5. JVM 内存模型
// 6. GC 算法
// 7. 类加载过程
// 8. 双亲委派模型
// 9. volatile 禁止指令重排
// 10. happens-before
// 11. ThreadLocal 原理
// 12. AQS 原理
// 13. BIO / NIO / AIO
// 14. 反射的应用场景
// 15. 泛型擦除
// 16. 异常体系
// 17. String 不可变原因
// 18. final / finally / finalize
// 19. 深拷贝 / 浅拷贝
// 20. == / equals / hashCode这些题都会了 = 面试 Java 基础稳过。
六、写代码的几个原则
java
// ① 命名要有意义
int a; // ❌
int userCount; // ✅
// ② 单一职责
class UserManager { void save(); void delete(); }
// ❌ 一个类 1000 行
class UserRepository { void save(); }
class UserService { void delete(); }
// ✅ 拆开
// ③ 别重复自己(DRY)
if (user.age >= 18) { ... }
if (order.userAge >= 18) { ... }
// ❌ 复制粘贴
boolean isAdult(int age) { return age >= 18; }
// ✅ 抽函数
// ④ 别过度设计
// 写 30 行能解决的,别写 300 行七、最后的建议
- 多写代码——看 10 遍不如写 1 遍
- 多踩坑——报错是最好的老师
- 多读源码——JDK 源码、Spring 源码
- 别追新——Java 17 已足够,别追 21
- 做项目——光看不练等于 0
学完这本,你的 Java 基础已经超过了 80% 的"科班"水平。 接下来,去做项目,在实战中提升。
Java 基础篇完。后端进阶请看 → Spring Boot 实战