JAVA的编译器和解释器

时间:2021-09-18 14:49:21

印象里记得java是解释语言,但又想到java要编译,于是上网搜了一下源文件的运行方式,结果如下:

方法一:JAVA的源文件(java文件)经过编译器编译成字节码文件(英文是bytecode,即class文件),字节码由JVM解释执行

方法二:字节码不解释执行,而是由JVM中的即使编译器(JIT)编译成可执行代码并储存起来,当然编译的不是全部字节码,这样可以显著提高性能,因为解释执行每次都要将字节码从头到尾一条一条解释成机器语言

注意:通常情况下,一个平台上的二进制可执行文件不能在其他平台上工作(如笔记本和火箭),因为此可执行文件包含了对目标处理器的机器语言。而Class文件这种特殊的文件,是可以运行在任何支持Java虚拟机的硬件平台和操作系统上的!