2
一個對象可以包含對其他對象的引用。如果將這些引用聲明爲類/字段變量,則由於對象本身是在堆上創建的,因此由字段引用表示的值將存儲在堆中。本地參考和現場參考內存分配
所以,如果我有
public class A {
int size;
}
- 我知道,如果尺寸變的
2
一個int值,然後將其存儲在堆上對象的一部分,但如果是即名稱參考大小存儲? - 名稱「size」也存儲在堆中對象的內部。
- JVM如何在堆上交叉引用
size == 2
? - 當您加載它在主線程中運行的類時,每個線程都將擁有自己的堆棧。所以這些字段引用不會在主棧上創建正確嗎?
波希米亞人,你是說名字大小被存儲在類定義文件內的permgen內存,但不是在堆? – Phoenix 2012-07-27 01:13:38
@Phoenix該字段的名稱在類定義中,並且類定義在permgen中,所以字段名也在permgen中(嵌套在類定義中) – Bohemian 2012-07-27 01:16:40
Bohemian,如果字段引用是對另一個對象的引用而不是原始的?像A類一樣{B名稱;}? – Phoenix 2012-07-27 01:30:11