一、Java基础阶段(1-2个月)
环境搭建
安装JDK,配置环境变量(JAVA_HOME、Path)
熟悉IDE(推荐IntelliJ IDEA或Eclipse)
基础语法
变量、数据类型、运算符、流程控制(if/else、for、while)
数组、字符串操作、方法定义与调用
输入输出(Scanner、System.out)
面向对象编程(OOP)
类与对象、构造方法
封装、继承、多态、抽象类、接口
内部类、匿名类、静态关键字(static)、final关键字
常用类库
java.lang包:String、Math、Object
java.util包:集合框架(List、Set、Map)、日期时间(Date、LocalDateTime)
异常处理(try-catch、自定义异常)
IO流(File、InputStream/OutputStream、Reader/Writer)
Java 8+新特性
Lambda表达式、函数式接口
Stream API、Optional类
接口默认方法与静态方法
二、Java进阶阶段(2-3个月)
多线程与并发编程
线程生命周期、线程创建方式(Thread、Runnable、Callable)
线程同步(synchronized、Lock、volatile)
线程池(ExecutorService)、并发工具类(CountDownLatch、ConcurrentHashMap)
JVM原理
内存模型(堆、栈、方法区)
垃圾回收机制(GC算法、分代收集)
类加载机制、JVM调优基础
网络编程
Socket编程(TCP/UDP)
HTTP客户端(HttpURLConnection、OkHttp)
反射与注解
Class类、动态代理
自定义注解、元注解(@Retention、@Target)
泛型与集合源码
泛型擦除、通配符(? extends、? super)
阅读ArrayList、HashMap源码实现
三、工具与框架(2-3个月)
构建与测试工具
Maven/Gradle(依赖管理、构建流程)
JUnit 5(单元测试、Mockito模拟测试)
主流框架
Spring Framework
IOC/DI、AOP、Spring MVC
Spring Boot
自动配置、Starter依赖、RESTful API开发
整合MyBatis、JPA
Spring Cloud(微服务方向)
Eureka、Feign、Hystrix、Gateway
数据库与ORM
SQL基础(DDL、DML、事务)
MySQL/PostgreSQL、索引优化
MyBatis/Hibernate(ORM框架)
Redis(缓存、分布式锁)
开发工具链
Git(版本控制)
Docker(容器化部署)
Jenkins(持续集成)
四、项目实战(1-2个月)
练手项目
管理系统(如电商后台、图书管理)
博客系统(Spring Boot + MyBatis + Thymeleaf)
微服务项目(Spring Cloud + Docker)
开源项目学习
GitHub参与开源项目(如Spring生态、Apache项目)
阅读优秀源码(如Guava、Netty)
五、拓展方向(按兴趣选择)
后端开发
分布式架构(Dubbo、Zookeeper)
消息队列(Kafka、RabbitMQ)
大数据
Hadoop、Spark、Flink
Android开发
Android SDK、Kotlin语言
六、学习资源推荐
书籍
《Java核心技术卷Ⅰ》
《Effective Java》
《深入理解Java虚拟机》
文档与社区
Oracle官方文档
Stack Overflow
掘金、CSDN技术博客
七、学习建议
动手实践:每学一个知识点都写代码验证。
持续学习:Java生态更新快(如新版本Loom、Valhalla特性)。
参与社区:关注技术论坛、参与开源项目。
代码规范:学习《阿里巴巴Java开发手册》。