为什么说java是解释与编译共存的语言?(JIT即时编译器用于保存热点代码的字节码对应的机器码)

本文详细阐述了Java为何被称为解释与编译共存的语言。首先,Java源代码通过javac编译成字节码,然后由JVM的类加载器加载并由解释器逐行解释执行。为了提升效率,对于频繁执行的字节码,即时编译器将其编译为机器码,实现优化执行。这种机制兼顾了平台独立性和运行效率。

为什么说java是解释与编译共存的语言?

1、先解释“解释”

java源文件通过JDK中的javac编译成字节码文件,字节码文件到机器码这一步,JVM类加载器首先需要加载字节码文件,然后通过解释器逐行解释执行。

2、再解释“编译”

逐行解释执行字节码文件中的某些方法和代码时,有部分代码重复执行,为提高效率,即时编译器将这部分字节码的机器码保存下来,就不需要重复解释。下次直接使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值