2010-10-19 83 views
0

其中对象,变量变量,临时变量都存储在java中?他们如何被引用?我知道方法正在堆栈中存储。变量存储在堆或堆栈中?java中的内存管理

+1

是你说的与内存管理有关的东西吗?此外,请澄清您的术语“变量变量”和“临时变量”。在我看来,方法内部只有“本地/堆栈变量”,其寿命从方法的开始到结束。 – 2010-10-19 04:21:35

回答

6

其中对象,变量变量,临时变量存储在java中?

  1. 对象存储在堆上。总是。

  2. 对象字段/属性是它们各自对象的组成部分。我想这就是你所说的“变量变量”。

  3. 局部变量和方法参数存储在堆栈中。

注意:如果一个字段,变量,参数有一个物体或阵列,相应的值将在“时隙”用于通过一个对象引用的对象场/局部变量/参数来表示。

它们是如何被引用的?

对象被对象引用引用。如何表示这些对象引用是一个实现细节,它是JVM特定的,对于应用程序是不透明的。但是,在大多数的情况下,它们都是普通的32位或64位机器(虚拟)地址。

+1

+1对于一个问题的一个混乱的答案 – 2010-10-19 04:38:51