java 变量在内存中的分配

java的成员变量和对象变量在堆栈内存中是如何分配的??把一个成员变量的值赋给另外一个成员变量,和把一个对象变量的引用赋给了另外一个对象变量,他们在堆栈中又如何分配的??一个对象建立了一个实例之后他在内存中又如何分配的??
我看教程看到这里糊涂了,请高手指点一下小弟!!!
在java中为什么要区分堆栈,他们运行起来有什么差别??
把一个成员变量的值赋给另外一个成员变量,
a:在栈里两个变量同时指向一个值。 在内存中有变化吗??

和把一个对象变量的引用赋给了另外一个对象变量,他们在堆栈中又如何分配的??
a:两个引用同时指向同一个对象。 在内存中有变化吗??
可以讲详细一点吗??

java的成员变量和对象变量在堆栈内存中是如何分配的??
a: 成员变量是在栈里,对象是在堆里一般都是new 出来的!

把一个成员变量的值赋给另外一个成员变量,
a:在栈里两个变量同时指向一个值。

和把一个对象变量的引用赋给了另外一个对象变量,他们在堆栈中又如何分配的??
a:两个引用同时指向同一个对象。

一个对象建立了一个实例之后他在内存中又如何分配的??
a:比如 Person p = new Person();
栈里有一个 p 指向 堆里边的 Person 对象。

还有那点不明白再问!

在栈里两个变量同时指向一个值。 在内存中有变化吗??
你最好把相应样例代码贴出来!

两个引用同时指向同一个对象。 在内存中有变化吗??

在堆内存里没有变化,栈内存中两个变量应用了同一个内存地址,也就是堆内存中对象的地址。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-03-18
JAVA中所有的对象都是在堆里创建的,而不是栈,栈里存放的是基本的数据类型。
第2个回答  2008-03-18
只需记住一点,java里面的都是引用
相似回答