`

从think in java中看数据的存储

阅读更多

 

第一弹:

根据think in java22页简写

有五个不同的区域可以存储:

1. 寄存器.  cpu中,是最快的存储区域但数量极为有限,只能按需分配。在java中不能直接控制,也不能感觉到寄存器存在的任何迹象。

2. 堆栈.  位于通用RAM中,通过堆栈指针操纵,速度仅次于寄存器。Java根据数据的生命周期将数据存储在堆栈中,这样虽然速度快,但影响了程序的灵活性。但对象是不存储在其中的,java中的基本类型存储在堆栈中,所以有些适用于对象的规则对于基本类型不适用。

基本类型包括:

Boolean

Char 16

Byte 8

Short 16

Int 32

Long 64

Float 32

Double 64

Void

Java中这些常量的大小是固定的,不随硬件的变化而变化,这也是其可移植的原因之一。

3. 一种通用的内存池,位于RAM中,用于存放所有的java对象。当执行创建对象代码时,自动在堆中分配一块内存区域,增加了灵活性。但这种灵活性使得清理和分配内存区域耗费了时间。

4.常量存储:  程序代码内部

5. RAM存储 数据完全存活与程序之外,程序没有运行时也可以存在。Eg:流对象和持久化对象。 将对象转化为可以存放在其他媒介上的事物,在需要时可以恢复成常规的。

       

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics