写在教程之前

本 Java 教程并不适用于完全初学者来学习,如果是没有接触过编程的小白在阅读本教程会感觉很费力。

本教程是基于对 C 语言的理解之上进行解释的,很多内容默认学习者已经掌握基本的编程思想。
假如你是在学习 C 语言或者 C++ 之后再学习的本教程,那么理解起来应该相对轻松。
如果是学习了非 C 的其他编程语言,比如 Python,虽然不如像 C 程序员一样方便阅读,但是本教程还囊括了基础部分,依然可以阅读。

而假如说你是真正的初学者,没有接触过编程,那么本教程将会推荐你阅读一下其他教程。

本教程虽然有给出关于 IDE 的选择和环境变量的配置相关章节,但是基于有其他环境变量配置经验的学习者来说的,仅给出了不同环境和 IDE 的相对区别,而没有给出细致教学内容。


推荐资源与外部链接

权威文档

资源说明
Java 官方文档Oracle 官方文档,最权威的参考
OpenJDK 源码OpenJDK 官方仓库
Java 语言规范Java 语言规范(JLS)
JVM 规范JVM 虚拟机规范

视频教学

资源说明
黑马程序员 Java 教程经典的 Java 零基础教学
尚硅谷 Java 入门适合零基础入门
Java 核心技术精讲面向有编程基础的学习者
Spring Boot 实战Spring Boot 入门到实战

教学网站与学习仓库

资源说明
菜鸟教程 Java适合快速查阅语法
[Java 教程菜鸟教程](https://www.runoob.com/java/)
Baeldung高质量 Java/Spring 教程网站
Java guidesJava 入门到进阶指南
《Java 核心技术》Java 核心知识整理

实战类项目仓库

资源说明
spring-petclinicSpring 官方示范应用,教科书级分层架构
java-design-patterns90k+ 星,GOF 二十三式 Java 实现
JavaGuideJava 面试+学习指南,40k+ 星
CS-Notes技术面试必备,Java 部分非常完善
toBeTopJavaerJava 工程师成神之路
awesome-javaJava 生态资源合集
spring-boot-examplesSpring Boot 使用示例集合
mall电商系统实战项目,Spring Boot + MyBatis

工具类仓库

资源说明
Arthas阿里开源的 Java 在线诊断工具
Maven 仓库Java 包搜索和依赖管理
JDB 调试JDK 内置调试器

学习建议

如果是完全零基础的小白,推荐先学习 Python 或 C 语言入门,再回来学习本教程。
如果已经有其他语言基础,可以直接开始学习本教程,遇到不懂的 Java 特性再查阅上面的资源。

本教程的重点在于:

  • Java 语言核心特性(泛型、反射、注解)
  • JVM 工作原理(内存模型、GC、调优)
  • 企业级开发(Spring Boot、MyBatis、微服务)
  • 工程化实践(Maven、Docker、CI/CD)

学完本教程,你应该能够:

  • 独立开发 Spring Boot Web 应用
  • 理解 JVM 运行机制,能进行性能调优
  • 阅读和理解 Java 开源项目源码
  • 参与企业级 Java 项目开发