java 虚拟机内存区域

堆和栈

堆是用来存放对象,

栈是用来执行程序的。

 

JVM 运行时内存区域

1.线程独有的内存区域

  1.1  PROGRAM COUNT REGISTER 程序计数器

         他是当前线程执行的字节码行号显示器。java方法执行的时候才有这,native 方法执行的时候是空的,这块内存大小很小

  1.2 JAVA STACK 虚拟机栈

        用来存局部变量表,方法出入口等信息,每一个方法重被调用到执行结束的过程,就对应一个栈帧在虚拟机入栈出栈的过程。

  1.3 NATIVE JAVA STACK navtive方法栈

 

2 线程建共享的内存区域

   2.1 HEAP 堆

     用来存放对象实例

  2.2 METHOD AREA 方法区

     用来存储虚拟机加载类信息,常量,静态变量

 

posted @ 2018-04-08 15:21  tangw  阅读(112)  评论(0编辑  收藏  举报