栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java是编译性语言还是解释性语言

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java是编译性语言还是解释性语言

结论:Java 即使编译性语言也是解释性语言。
编译:将 *.java 文件编译成 *.class 字节码文件。
解释:JVM 加载 *.class 字节码文件,然后通过解释器逐行解释为机器码执行。
JIT:解释器逐行解释并运行效率相对较低,JVM 可以将热点代码编译成机器码并保存下来,下次调用直接调用执行机器码,在一定程度上提高运行效率。
注:常见的 HotSpot 采用惰性评估的方式,在某些代码在某段时间内达到一定的执行次数后才会及时编译为机器码。JVM 也会根据每次被执行的情况收集信息并做出一些优化,所以有些代码执行的次数越多,它运行的速度越快,所以在某些系统上线后需要通过预热来提高代码的运行效率。JDK 9 还引入一种新的编译模式 AOT(Ahead of Time Compilation) 它是直接将字节码编译成机器码,避免了 JIT 预热等各方面的开销。JDK 支持分层编译和 AOT 协作使用,但是 AOT 编译器的编译质量肯定是比不上 JIT 编译器的。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/727367.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号