Java 学习路线与知识图谱
1. Java 基础(核心语言特性)
- 语法基础(变量、数据类型、运算符、流程控制)
- 面向对象编程(封装、继承、多态、抽象、接口)
- 异常处理(try-catch-finally、异常类型)
- Java 泛型、Lambda 表达式、反射机制
- 多线程与并发(线程池、锁、volatile、CAS)
- JVM 知识(类加载机制、垃圾回收 GC、JIT 编译)
2. 数据结构与算法
- 线性结构:数组、链表、栈、队列
- 非线性结构:树(二叉树、AVL 树、红黑树、B+树)、图
- 查找与排序(快速排序、归并排序、二分查找等)
- 常见算法(动态规划、贪心算法、回溯、分治等)
- Java 中的数据结构(ArrayList、LinkedList、HashMap、ConcurrentHashMap、TreeSet 等)
3. 并发与多线程编程(可独立成一个大类)
- 线程基础(Thread、Runnable、Callable)
- 并发工具类(CountDownLatch、Semaphore、CyclicBarrier 等)
- 线程池(Executor、ForkJoin、ScheduledThreadPool)
- 并发编程模型(ReentrantLock、AQS、CAS、Unsafe)
4. 网络编程
- Java 网络通信基础(TCP/UDP)
- Socket 编程(BIO、NIO、AIO)
- Http/Https 协议、WebSocket
- Netty 框架(高性能网络通信)
5. Java 企业级开发框架(主流框架)
- Spring 生态(Spring Boot、Spring MVC、Spring Cloud、Spring Security)
- ORM 框架(MyBatis、Hibernate、JPA)
- 微服务架构(Spring Cloud、Dubbo、gRPC)
- 数据库技术(MySQL、Redis、MongoDB、Elasticsearch)
- 分布式技术(Zookeeper、Kafka、RabbitMQ、RocketMQ)
6. Java 工具 & DevOps
- 构建工具(Maven、Gradle)
- 版本控制(Git、SVN)
- 容器化与部署(Docker、Kubernetes)
- 日志系统(Log4j、SLF4J、ELK)
- 性能优化(JVM 调优、JProfiler、JConsole)
- CI/CD(Jenkins、GitLab CI/CD)
7. 其他知识(扩展)
- 设计模式(单例、工厂、代理、策略、责任链等)
- 计算机基础(操作系统、计算机网络、数据库系统原理)
- 安全(加密解密、JWT、OAuth2)
- Java 未来趋势(Quarkus、GraalVM、Serverless)
