讲解
Java 诞生于 1995 年,是一门静态类型、面向对象的编程语言,至今仍是企业级后端开发、安卓应用和大数据生态的主力语言。它最著名的口号是「一次编写,到处运行」:Java 源码先被编译成一种中间形态(字节码,.class 文件),再由 Java 虚拟机(JVM)负责在 Windows、macOS、Linux 等任何系统上执行,所以同一份程序不需要为每个平台单独编译。
学习 Java 前要分清三个缩写:JDK(Java Development Kit,开发工具包)包含编译器 javac、运行时和全套开发工具,是我们要安装的东西;JRE(Java Runtime Environment)只包含运行程序所需的环境,不能编译代码;JVM(Java Virtual Machine)是 JRE 里真正执行字节码的虚拟机。日常说的「装 Java」指的就是装 JDK。本教程所有示例基于 JDK 17——这是一个长期支持(LTS)版本,语法稳定、资料丰富,也是当前企业里使用最广的版本线之一。
Java 程序的开发流程永远是三步:用文本编辑器写出 .java 源文件,用 javac 把源码编译成 .class 字节码,用 java 命令启动 JVM 执行字节码。入门阶段建议先老老实实走这三步,理解每一步在干什么,再去使用 IntelliJ IDEA 这类集成开发环境(IDE)——IDE 能一键完成编译运行,但过早依赖它会让你对底层流程一无所知,遇到环境问题时无从下手。
示例
安装好 JDK 后,在终端里验证一下编译器和运行时的版本(这条命令在终端执行,不是 Java 代码):
javac -version
java -version
下面这个程序会打印 Java 运行时的一些基本信息,把它存成 Main.java 后用 javac Main.java 编译、java Main 运行,就算完成了环境自检:
public class Main {
public static void main(String[] args) {
System.out.println("Java 环境搭建成功!");
System.out.println("运行时版本:" + System.getProperty("java.version"));
System.out.println("操作系统:" + System.getProperty("os.name"));
}
}
常见坑
- 只装了 JRE 就试图编译:JRE 里没有 javac,执行 javac 会提示命令不存在。学开发必须装 JDK,装完用 javac -version 确认。
- 命令提示「找不到 javac」:说明 JDK 的 bin 目录没有加入系统 PATH 环境变量。重新配置 PATH,或在终端里使用 javac 的完整路径。
- 混淆 JDK 版本号:JDK 8 之后版本号直接是 11、17、21,不存在「JDK 1.17」这种说法;看到「1.8」要反应过来它就是 JDK 8。学习时认准一个 LTS 版本(如 17)即可。
- 一上来就扎进 IDE:IDE 屏蔽了编译细节,新手容易连「源码—编译—运行」的链条都说不清。先用记事本加终端写几个程序,再切换到 IDE 会踏实得多。
小结
Java 源码经 javac 编译成字节码,由 JVM 跨平台执行;JDK 包含开发所需的全部工具,本教程基于 JDK 17。下一节我们正式写出第一个 Java 程序,逐行看懂它的结构。