简介
Java 是一种功能强大且用途广泛的编程语言,广泛应用于各种领域。在本教程中,我们将指导你在终端或命令行界面中直接编译和运行 Java 程序的过程。这是任何 Java 开发者的一项基本技能,使你无需使用集成开发环境(IDE)就能快速测试和执行代码。
Java 编程简介
Java 是一种广受欢迎且被广泛使用的编程语言,于 1995 年由 Sun Microsystems 首次发布。它是一种面向对象、基于类的语言,设计为与平台无关,这意味着 Java 程序可以在包括 Windows、macOS 和 Linux 在内的各种操作系统上运行。
Java 的关键特性之一是其 “一次编写,到处运行”(WORA)原则,这意味着 Java 程序只需编译一次,然后就可以在任何 Java 虚拟机(JVM)上执行,无需重新编译。这使得 Java 成为一种通用且可移植的语言,广泛应用于各种领域,包括网页开发、移动应用开发、企业软件和科学计算。
Java 程序通常在文本编辑器或诸如 IntelliJ IDEA、Eclipse 或 NetBeans 之类的集成开发环境(IDE)中编写。一旦编写了源代码,就必须将其编译为字节码,字节码是程序的与平台无关的表示形式,可由 JVM 执行。
要开始进行 Java 编程,你需要在系统上安装 Java 开发工具包(JDK)。JDK 包括 Java 编译器、JVM 以及开发和运行 Java 程序所需的各种其他工具和库。
graph TD
A[编写 Java 代码] --> B[编译 Java 代码]
B --> C[运行 Java 程序]
C --> D[在 JVM 上执行]
安装好 JDK 后,你就可以使用命令行或 IDE 开始编写和编译 Java 程序了。在下一节中,我们将探讨如何使用命令行编译 Java 源代码。
编译 Java 源代码
要编译 Java 源代码,你可以使用 javac 命令,它是 Java 开发工具包(JDK)的一部分。javac 命令以 Java 源文件作为输入,并生成一个相应的扩展名为 .class 的字节码文件。
以下是编译一个简单 Java 程序的示例:
- 创建一个名为
HelloWorld.java的新文件,内容如下:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
打开终端,导航到保存
HelloWorld.java文件的目录。使用
javac命令编译 Java 源代码:
javac HelloWorld.java
运行此命令后,你应该会在同一目录中看到一个名为 HelloWorld.class 的新文件。此文件包含你的 Java 程序的字节码表示形式。
编译过程可总结如下:
graph TD
A[Java 源代码] --> B[javac 编译器]
B --> C[Java 字节码]
需要注意的是,javac 命令也可用于一次编译多个 Java 源文件。例如,如果你有一个包含多个 Java 文件的目录,可以运行 javac *.java 来编译所有文件。
此外,javac 命令支持各种选项和标志,可用于自定义编译过程,例如设置源 Java 版本和目标 Java 版本、启用或禁用某些编译器警告等。你可以在终端中运行 javac -help 来探索这些选项。
既然你已经学会了如何编译 Java 源代码,接下来让我们进入下一步:在终端中运行 Java 程序。
在终端中运行 Java 程序
在编译完 Java 源代码后,你可以使用 java 命令来运行生成的字节码。java 命令也是 Java 开发工具包(JDK)的一部分,用于执行 Java 程序。
要运行我们之前编译的 HelloWorld 程序,请执行以下步骤:
打开终端,导航到
HelloWorld.class文件所在的目录。运行
java命令,后跟主类的名称(不带.class扩展名):
java HelloWorld
这将执行 HelloWorld 类中的 main() 方法,并在控制台输出消息 “Hello, World!”。
运行 Java 程序的过程可总结如下:
graph TD
A[Java 字节码] --> B[java 命令]
B --> C[在 JVM 上执行]
除了运行简单程序外,java 命令还支持各种选项和标志,可用于自定义 Java 应用程序的执行。例如,你可以使用 -cp 或 -classpath 选项来指定类路径,即 JVM 应在其中查找已编译类文件的目录或目录集。
以下是使用自定义类路径运行 Java 程序的示例:
java -cp /path/to/my/classes HelloWorld
你还可以使用 main() 方法中的 String[] args 参数将命令行参数传递给 Java 程序。这些参数可以在你的 Java 代码中访问和使用。
public class HelloWorld {
public static void main(String[] args) {
if (args.length > 0) {
System.out.println("Hello, " + args[0] + "!");
} else {
System.out.println("Hello, World!");
}
}
}
要使用命令行参数运行此程序,你可以使用以下命令:
java HelloWorld "LabEx"
这将在控制台输出 “Hello, LabEx!”。
通过了解如何在终端中编译和运行 Java 程序,你已经朝着成为一名熟练的 Java 开发者迈出了第一步。在下一节中,我们将探索更多与 Java 相关的高级主题和技术。
总结
通过遵循本教程中概述的步骤,你将学习如何在终端中直接编译 Java 源代码并运行 Java 程序。无论你是初学者还是有经验的开发者,这些知识都将使你能够高效地使用 Java。了解基于终端的 Java 开发工作流程是一项宝贵的技能,在你的编程之旅中会对你大有帮助。



