JVM开篇

JDK的组成

image.png

JVM的组成

JVM (5).jpg

运行时数据区就是JVM的内存模型。

虚拟机栈

image.png

本地方法栈和虚拟机栈差不多,区别以后再说。

方法区

  • 用于存储已被虚拟机加载的类信息、常量静态变量、即时编译后的代码等数据。

(1)线程共享的
(2)运行时常量池

  • 存放编译期生成的各种字面量和符号引用。
  • Class文件中除了存有类的版本、字段、方法、接口等描述信息。

static 差不多都在里面。

大致宏观上

  • 栈中的栈帧里的局部变量可能是对象,就会有指向堆中对应对象的引用。
  • 方法区静态变量也可能是对象,就会有指向堆中对应对象的引用。
  • 程序计数器存有指向方法区指令执行到哪的引用(地址)。
  • 程序执行引擎根据程序计数器执行指令代码。
  • 众所周知,对象在堆中。

image.png

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享