Java 学习路线与知识图谱

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)