JVM学习(虚拟机栈、堆、方法区)自我看法

堆(Heap):

  此内存区域唯一目的就是存放对象实例,几乎所有的对象实例都在这里分配。这一点在java虚拟机规范中的描述是:所有的对象实例以及数组都要在堆上分配。

虚拟机栈(Stack):

  虚拟机栈主要用于存储局部变量等。局部变量表存放了编译期可知长度的各种基本类型(boolean、byte、char、short、int、float、long、double)、对象引用(reference类型,它不等同与对象本身,是对象在栈内存的首地址)。方法执行完,自动释放、

方法区(Method Area):

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

posted @ 2019-08-02 09:23  编程小白1024  阅读(224)  评论(0编辑  收藏  举报