标签:
转至:http://blog.csdn.net/lom9357bye/article/details/48895987
1、数据划分
(1)虚拟机栈:用来存放一些局部变量、方法出口等,生命周期随着程序的结束而结束
(2)堆:对于引用类型的实例和数组都在堆上分配,java垃圾回收机制就是对堆中额度内存进行回收
(3)方法区:用于存储已经被虚拟机加载的类信息,常量,静态变量等,这个区域内存回收的目标主要是对常量池的回收和类型的卸载,回收的内存比较少,所有也有称这个区域为永久代(PermanentGeneration)的。
(4)运行时常量池:运行时常量池是方法区的一部份,用于存放编译期间生成的各种字面量和符号引用
(5)程序计数器:程序技计数器是一块较小的内存空间,它是当前线程执行字节码的行号指示器,字节码解释工作就是通过改变这个计数器的值来选取下一条需要执行的指令,它是线程私有的内存,也是唯一个没有OOM异常的区域。
(6)本地方法栈:为虚拟机使用到native方法服务
标签:
原文地址:http://www.cnblogs.com/yw-ah/p/5854351.html