小公司:Java从编译到执行,发生了什么?

Java3y

共 1943字,需浏览 4分钟

 ·

2021-06-28 13:42

《对线面试官》系列目前已经连载25篇啦!有深度风趣的系列!

总结下今天的内容,并画了个图(三连三连!三连可以加快更新速度!):

  • Java跨平台因为有JVM屏蔽了底层操作系统
  • Java源码到执行的过程,从JVM的角度看可以总结为四个步骤:编译->加载->解释->执行
    • 「编译」经过 语法分析、语义分析、注解处理 最后才生成会class文件
    • 「加载」又可以细分步骤为:装载->连接->初始化。装载则把class文件装载至JVM,连接则校验class信息、分配内存空间及赋默认值,初始化则为变量赋值为正确的初始值。连接里又可以细化为:验证、准备、解析
    • 「解释」则是把字节码转换成操作系统可识别的执行指令,在JVM中会有字节码解释器和即时编译器。在解释时会对代码进行分析,查看是否为「热点代码」,如果为「热点代码」则触发JIT编译,下次执行时就无需重复进行解释,提高解释速度
    • 「执行」调用系统的硬件执行最终的程序指令

文章以纯面试的角度去讲解,所以有很多的细节是未铺垫的。

鉴于很多同学反馈没看懂【对线面试官】系列,基础相关的知识我确实写过文章讲解过啦,但有的同学就是不爱去翻。

我把这些上传到网盘,你们有需要直接下载就好了。

怎样偷偷努力 惊艳所有人?

扫码关注【面试造火箭
关注后回复「888」还可获取网盘地址哟!
浏览 28
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报