为什么Java同时使用编译器和解释器?
让我们从一个基本问题开始这篇文章。
什么是语言翻译器?
你可能会想到一个工具或软件,可以根据需要在语言之间进行翻译,以便双方都能理解。你的想法完全正确。
在计算机编程中,编译器和解释器只是语言翻译器。这些是将编程语言的源代码翻译成机器码、字节码或其他中间代码的软件程序/工具。或者,简单地说,它将代码从高级语言转换为低级语言,使其成为机器可理解的代码。
每个程序员都知道,在各种语言中,解释器和编译器是分别使用的。但是Java编程语言同时使用了解释器和编译器。Java编程语言同时使用编译器和解释器,因为源程序代码首先被转换成二进制程序代码。然后,这段代码由JVM运行,JVM通常是一个基于软件的解释器。
通过使用编译后的字节码,解释器可以变得小巧而实用。这个二进制代码也有助于Java的功能,因为如果使用正确,它将在任何JVM上运行,而不管设备或软件设置如何。Java同时使用了解释器和编译器。
因此,我们将为您提供更多关于Java编译器和Java解释器的信息。
Java编译器
Java编译器也称为javac。它将源代码转换为称为字节码文件的中间文件。每种类型的操作系统使用不同的字节码文件这一事实允许平台独立性。
Java编译器将整个源代码转换成机器码文件或其他中间代码,然后执行。它是独立于平台的。字节码主要是编译器在源代码编译后生成的中间代码。
可以使用命令行中的“javac.exe”命令启动Java编译器。
Java编译器是如何工作的?
它在突出显示错误之前快速扫描整个源代码。
在创建字节码的过程中会消耗更多内存。
它检查是否存在任何拼写或语法错误,以确保程序正确。
此外,如有必要,它还会向我们的程序添加一些额外的代码。
Java解释器
Java与每个操作系统兼容,并且Java解释器将字节码转换为机器码。根据操作系统,这个机器码将会改变。
解释器是一个计算机程序,它通过将高级程序语句转换为汇编级编程语言来执行类似的功能。运行程序时,二进制代码(二进制编程语言)将转换为机器码(机器编程语言)。
Java解释器是如何工作的?
它将二进制代码转换为机器的本机代码。
解释器逐行翻译语言。
当一行出现错误时,该过程结束。
Java编译器和Java解释器的区别
程序在完全编译成机器码之前由编译器编译,然后解释器逐行解释。
编译器一次显示所有错误和警告,而解释器一次只显示一个错误。
与扫描整个程序的编译器不同,解释器在读取每一行后查找错误。
解释器比编译器更容易调试。
与编译器相比,解释器运行时间更长。
结论
任何编程语言都可以用来生成机器码。任何编程语言、一组语言或一种语言。
与许多其他现代编程语言一样,Java也同时使用解释器和编译器。目标是结合两者的最佳特性。
Java编译和解释完美无缺。Java应用程序使用Java编译器和JVM(一个基于软件的解释器)在计算机上完全运行。
Java同时使用编译器和解释器。这样解释器就可以使用Java代码,编译器先将代码转换为字节码,然后再使用。然后,解释器将字节码转换为其他机器码,例如Linux、Microsoft Word、Windows 10等。