Java中数据的内存分配

来源:互联网 发布:slam算法工作原理 编辑:程序博客网 时间:2024/05/22 23:57

计算机中有五个地方可以用来存储数据:

1.寄存器:位于处理器内部,不能直接控制,根据需求进行分配。

2.堆栈:局部变量、java对象的引用,基本类型存储在堆栈中,堆栈的速度仅次于寄存器,位于RAM中。创建java程序时,java系统必须知道存储在堆栈中项目的确切生命周期,以便进行上下移动操作。

3.堆。一种通用的内存池,也在RAM中。用于存储java对象,在堆中的数据可以不用知道存储在数据在堆中存活多长时间,例如在创建对象时只需要写new一行代码即可,当执行到这行代码时,会自动在堆中进行存储分配。

4.常量存储。用以存储常量的一个区域。

5.非RAM存储。指磁盘的存储或数据库持久化存储的位置。

另外Java中还有常量存储区(即数据区),用来存储static变量,类中的方法存储在代码区。


以上总结来自Thinking in Java。

0 0
原创粉丝点击