欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Thinking in Java (1) Java存储,

来源: javaer 分享于  点击 46516 次 点评:126

Thinking in Java (1) Java存储,


Java有五个存储数据的地方:

1. 寄存器(Register)寄存器位于处理器内,数量有限,你不能直接控制他们。

2. 栈 (Stack)这部分位于RAM之内,通过栈指针(stack pointer)由处理器控制。栈是仅次于寄存器存取速度的结构。Java系统必须知道栈中所有数据的生存时间,这个限制制约了程序的灵活性。

3. 堆 (Heap) 这部分同样位于RAM内,相当于内存池的结构,所有的Java对象都在堆中。与栈不同,编译器不需要知道存储时间的长短。但是这个灵活性的代价是需要花更多的时间进行堆存储的分配和回收。

4. 固定存储(Constant storage)。有时在嵌入式系统中,常量(Constants)可以有选择地存放在ROM中。

5. 非RAM存储。 若数据完全不在程序之内,可以在程序不在运行时存在,在程序的控制之外。两个主要的例子是流对象(streamed objects)和持久对象(persistent objects)。流对象可以变成字节流,而持久对象存在硬盘中,即使程序中止他们还是可以存在,还可以重新复原成RAM中的对象。Java支持轻量持久化,而JDBC和Hibernate这些机制对存储和重建数据库中的对象提供了很好的支持。

相关文章

    暂无相关文章
相关栏目:

用户点评