JVM执行引擎——解释器与编译器JIT

执行引擎是JVM核心的组成部分之一,因为字节码文件不能直接运行在操作系统上,所以执行引擎就充当了将字节码文件翻译为机器码,是将高级语言转化为机器语言的桥梁。

执行引擎有两种行为方式:解释执行和编译执行。

1.什么是解释器?什么是JIT编译器?

解释器:当JVM启动时会将字节码文件采用逐行 解释的方式一行行转化为机器码指令来执行 ,解释和执行同时进行,在解释过程中,如果出现错误,停止解释,在删除错误后,解释继续进行

JIT编译器:就是直接将字节码文件一次性直接编译 为机器码,但是并不是立即执行 ,相较于解释器需要更多的内存,在编译过程中,如果出现错误,停止编译,在删除错误后,重新编译整个程序

相关推荐
u0109147606 小时前
CSS组件库如何快速扩展_通过Sass @extend继承基础布局
jvm·数据库·python
爱敲键盘的猴子6 小时前
JVM -- 内存模型(运行时数据区,垃圾回收机制)
jvm
baidu_340998826 小时前
Golang怎么用go-noescape优化性能_Golang如何使用编译器指令控制逃逸分析行为【进阶】
jvm·数据库·python
m0_678485456 小时前
如何利用虚拟 DOM 实现无痕刷新?基于 VNode 对比的状态保持技巧
jvm·数据库·python
qq_342295826 小时前
CSS如何实现透明背景效果_通过RGBA色彩模式控制透明度
jvm·数据库·python
Greyson16 小时前
CSS如何处理超长文本换行问题_结合word-wrap属性
jvm·数据库·python
justjinji6 小时前
如何批量更新SQL数据表_使用UPDATE JOIN语法提升效率
jvm·数据库·python
weixin_580614007 小时前
MySQL存储过程中如何防止SQL注入_使用参数化查询规范
jvm·数据库·python
2401_837163897 小时前
PHP源码开发用台式机还是笔记本更合适_硬件选型对比【方法】
jvm·数据库·python
baidu_340998827 小时前
mysql修改列名会导致程序报错吗_Change Column语法与兼容性
jvm·数据库·python