JVM运行时数据区域

包含以下几个

  • 方法区:是各个线程所共享的内存区域,用于存储被虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据
  • 虚拟机栈:线程私有,生命周期与线程相同,用于描述java方法执行的内存模型(每个方法要执行同时会创建一个栈桢用于存储局部变量表,操作数栈,动态链接,方法出口等信息。每个方法从调用直到执行害性的过程,对应着一个栈桢在虚拟机栈中入栈到出栈的过程)
  • 本地方法栈:为虚拟机使用到的Native方法服务。
  • 堆:是Java虚拟机所管理的内存中最大 的一块,是所有线程所共享的一块内存区域,在虚拟机启动时创建。用于存储对象实例。
  • 程序计数器:当前线程所执行的字节码的行号指示器。每个线程都有一个独立的程序计数器。

你可能感兴趣的:(JVM,JVM)