8 编译型和解析型

编译型和解析型

  • 编译型 (complce)

    • 使用专门的编译器,针对特定的平台,将高级语言源代码一次性的编译成可被该平台硬件执行的机器码,并包装成该平台所能识别的可执行性程序的格式。
    • **特征:**编译型就是直接编译成机型可以执行的,只翻译一次
    • **优点:**相比解释执行编译执行效率高,占用资源小,适合复杂程序
    • **缺点:**兼容性差,编译型程序虽然源代码也可以移植,但前提是必须针对不同的系统分别进行编译.
  • 解析型定平台的机器码并立即执行。

    • **特征:**解释型语言在运行程序的时候才翻译,每执行一次,要翻译一次,效率较低.
    • **优点:**可移植性好,只要有运行相应需要的解释环境,可以在不用的操作系统上运行,修改调试也非常方便
    • **缺点:**一句一句执行解释,浪费计算机资源,效率低

Java运行机制

  1. 编译

Java编译器对源文件进行错误排查的过程,编译后将生成后缀名为.class的字节码文件。好让JVM(java虚拟机)里的解释器可以正常读取。

  1. 运行

三步 代码的装入、代码的校验和代码的执行

	*  代码的装入

JVM控制解释器中的“类装载器”去读取和装载程序所需的类(class的字节码)。然后解释器开始建立类与类之间的关系。

*  代码的校验

字节码校验器进行检查:校验器可发现操作数栈溢出,非法数据类型转化等多种错误。

*  代码的执行

执行也分两种情况

即时编译方式:解释器先将字节码编译成机器码,然后再执行该机器码。

解释执行方式:解释器通过每次解释并执行一小段代码来完成Java字节码程 序的所有操作。

通常采用的是第二种方法。由于JVM规格描述具有足够的灵活性,这使得将字节码翻译为机器代码的工作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值