Java字节码解释器

2023-12-31

我知道java程序首先被编译并生成与平台无关的字节码。但我的问题是,为什么这个字节码在下一阶段被解释而不是被编译,即使编译通常比解释更快?


你是在自问自答。字节码是平台无关的。如果执行编译后的代码,则它不会在每个操作系统上运行。这就是 C 的作用,也是为什么每个操作系统都必须有一个版本的原因。

正如其他人所建议的,JVM 实际上使用以下方式编译代码:JIT http://en.wikipedia.org/wiki/Just-in-time_compilation。它只是没有保存在任何地方。这是一个很好的总结

在字节码编译系统中,源代码被翻译为 中间表示称为字节码。字节码不是 任何特定计算机的机器代码,并且可以在之间移植 计算机体系结构。然后字节码可以被解释,或者 运行在虚拟机上。 JIT编译器读取字节码 许多部分(或很少全部)并将它们交互地编译成 机器语言,使程序运行得更快

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java字节码解释器 的相关文章

随机推荐