什么是 Java 编译器-Java快速进阶教程
Java编译器和解释器是程序员在编程过程中使用的Java语言中最基本的工具。
Java 中的编译器是用于编译 Java 程序的计算机程序。它是独立于平台的。它将源代码(.java文件)转换(转换)为字节码(.class文件)。
换句话说,编译器(javac.exe)在编译过程中生成字节码。
字节码是由连接底层操作系统上的 Java 虚拟机 (JVM) 理解和解释的二进制代码。它与机器代码不同。
人类无法读取它,因为它由计算机唯一理解的语言数字组成。
可以通过命令提示符下的“Javac.exe”命令激活Java编译器。一些编译器选项如下所示:
- -help:显示所有编译器选项。
- -version:返回编译器版本。
- -verbose:输出编译器消息。
- –deprecation:标识已停用的 API。
- –nowarn:不生成任何警告。
编译器选项区分大小写。完整 Java 编译器选项的屏幕截图如下所示:
编译器的主要职责
除了编译源程序外,Java 编译器还负责以下任务:
a)Java编译器检查句法错误(语法错误)。当它在程序中发现错误时,它还生成一个包含所有错误消息的列表,并且不生成目标代码,除非Java编译器报告的错误得到纠正。
b)它在Java虚拟机(JVM)的帮助下将源代码转换为字节码。
c) 如果需要,它还会将其他代码添加到您的程序中。
Java 编译器如何工作?
我们可以在上图中看到,程序员编写的Java源代码由javac编译,然后生成java字节码(.class文件),该字节码以文件(扩展名.class)自动保存在磁盘上。
然后基于底层操作系统之上JVM 运行时解释和执行此.class文件。
在编译过程中,如果编译器在程序中发现错误,则会生成错误消息列表并通知程序员有关错误的信息。
然后,程序员需要纠正程序中发生的所有错误,并需要重新编译该程序。如果你不重新编译程序,将不会生成新的更正后的目标代码。
您可以通过下面的流程图中来简单的理解Java的编译过程。
关键点:
1.编译器是将高级语言程序(源代码)转换为称为目标代码的机器语言代码的翻译程序。
2.我们可以随时执行生成的目标代码。
3. 目标代码是指即使没有源代码(即实际程序)的可用性,也可以执行以生成用高级语言编写的程序输出的代码。
4. 在编译过程中,Java 编译器将整个程序转换为机器可读的目标代码,并通知用户程序中的所有错误。
5. 编译器是特定于语言的。也就是说,每种高级语言都有自己的编译器程序。因此,我们不能使用C++编译器来编译用 Java 编写的源代码。
6. 编译器不会检测到程序中的逻辑错误。
7.它只创建一个目标代码,不执行程序。