深入理解Java虚拟机(第三版)01-Java虚拟机运行时数据区介绍

微信公众号:[老张聊天]
又稳又重的老码农,分享工作生活经验。
风趣幽默的段子手,总结编程专业知识。
希望能用通俗易懂的语言,给小伙伴带来收获~
[如果觉得对您有帮助,欢迎关注,转发,点赞!]

一、开篇说明

老张最近在看多线程、锁的源码,但是在学习源码过程中,发现需要对Java虚拟机,以及JMM等有一个全面的理解,能更快的吸收源码中的知识。所以先更新Java虚拟机专栏内容。

之前没有接触过的小伙伴也不用怕不用怂,其实这部分知识,大部分还是理论。推荐先看一遍视频学习,对整体有印象和概念后,再来看书补充细节,多自己画图记忆。最后像老张一样,把学到的知识点巩固一下,整理成博客,最后按照自己的思路、自己的话能让别人听懂,就证明对这部分知识理解透彻了。

视频可以在B站搜索查看,有很多免费教程。

大家都知道Java程序可以转为字节码在Java虚拟机上运行,但是Java虚拟机有HotSpot,OpenJDK等等,一套字节码可以在多套虚拟机上运行,就是因为虚拟机受到《Java虚拟机规范》约束。《Java虚拟机规范》相当于API,而不同的Java虚拟机实现相当于Impl。

除了Java语言,Scala语言等也可以在Java虚拟机上运行,不同的语言都可以编译成字节码。Java受到《Java语言规范》的约束,规定如何声明类,创建方法等等。同理Scala语言也有《Scala语言规范》。

Java编译器同时受到《Java虚拟机规范》与《Java语言规范》的约束。

以下大部分内容基于周志明的《深入理解Java虚拟机 第三版》,第三版相比前面更新了很多知识点。pdf版本已经上传到网盘,微信扫码关注获取网盘地址和提取码

欢迎扫码关注

二、运行时数据区

根据《Java虚拟机规范》

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值