作者对比c++和java ,指出相比c++ ,Java 编程不需要开发者自己管理创建对象的内存,因为借助jvm的自动管理内存机制的帮助,开发人员可以不考虑这些。但交给Java虚拟机一旦出现内存泄漏和溢出的问题,如果不了解jvm的原理和运行机制,排查出来也是很有难度的,jvm也是成为了Java开发人员需要了解学习的原因,自己觉得学习jvm对 自己编写的代码的运行原理底层能有深入的了解,对理解Java语言有很大帮助。
运行时数据区域
上图为敬,肝了半天,画出了一个图👇
对比理解操作系统中的pc+1,cpu的 计数器,能够比较理解jvm的程序计数器,记录当前执行程序经javac编译器编译后的class字节码,的行数,行号,记录这次下次要执行的行号,来控制程序的向下执行,分支,跳转,异常和线程的恢复(上下文切换),注意的是每个线程都有一个程序计数器,和虚拟机栈(通常意义上说的栈)本地方法区一样。
#Java虚拟机栈
栈,存放基本数据类型的值,及引用数据类型的地址,
先发出去,督促自己整理下去,整理知识的学起来还是比较扎实
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。