起初设计者的初衷是将字节码文件翻译为机器语言的指令来执行即可,就诞生了解释器。但是采用一行行来解释的效率比较低,JIT编译器会将编译后的机器码做一个缓存的操作,放在方法区的JIT代码缓存中,是否需要启用JIT编译器直接将字节码编译为机器码,则需要考虑代码的调用执行的频率。文章来源:https://www.toymoban.com/news/detail-605413.html
JIT编译器会将“热点代码”(被多次调用的代码)直接编译为机器码,以此来提高执行的性能。目前Hotspot采用的是基于计数器的热点探测。文章来源地址https://www.toymoban.com/news/detail-605413.html
到了这里,关于JVM执行引擎——为什么Java是半编译半解释语言的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!