码迷,mamicode.com
首页 > 其他好文 > 详细

堆(heap)、栈(stack)、方法区(method)

时间:2017-09-02 19:00:21      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:程序   heap   管理   有一个   span   数据   收集   方法区   垃圾   

JVM内存分为3个区:堆(heap)、栈(stack)、方法区(method)

 

1.堆(heap):存储的全部对象,每个对象有个与之对应的class信息。即通过new关键字和构造器创建的对象。JVM只有一个堆被所有线程共享。堆是垃圾收集管理的主要区域。

 

2.栈(stack):每个线程包含一个栈区,栈中只保存基本数据类型和自定义对象的引用。每个栈中的数据都是私有的,其他栈不能访问。栈又分为3个区:基本类 型变量区、执行环境上下文、操作指令区。

 

3.方法区(method):方法区又叫做静态区。和堆一样被所有线程共享。方法区中包含的都是在整个程序中永远唯一的元素,如:class,static变量。常量池是   方法区的一部分。

 

堆(heap)、栈(stack)、方法区(method)

标签:程序   heap   管理   有一个   span   数据   收集   方法区   垃圾   

原文地址:http://www.cnblogs.com/whx20100101/p/7467239.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!