【发布时间】:2014-10-21 16:33:47
【问题描述】:
我阅读了一些关于 JVM 和字节码的资料。我认为如果 JVM 可以在第一次运行时将字节码翻译成平台相关的机器码,而不是一直解释它们,效率会更高。
但是,我在我的项目文件夹中找不到此类文件。只有 bin 和 src 文件夹,其中包含 *.class 字节码和 *.java 源代码。
所以我的问题是:
如果Java一直都在解释字节码,为什么不在第一次运行后将字节码翻译成机器码呢?
如果他们生成机器码,文件在哪里?
【问题讨论】:
-
为什么要浪费时间编译在 JVM 生命周期中可能永远不会再次运行的代码?
标签: java jvm bytecode machine-code