假設我們有一個類:Java如何爲新實例(使用String屬性)分配內存?
class Account {
String name;
int ID;
}
然後
a1 = new Account();
a2 = new Account();
將創建2個變量指向2個存儲類賬戶2個實例存儲位置。我的問題是Java如何知道這些實例有多大的分配內存(因爲使用String類型,我們可以指定任何字符串,例如,a1.name = "Solomon I", a2.name = "Alan"
。這將導致每個實例的大小不同)
內存位置是一個「連續的」字節串。因此,如果我有a1 = new Account()
那麼a2 = new Account()=> a1的內存位置是固定的('used memory | a1 | a2')那麼如果我讓a1.name成爲一個很長的字符串會發生什麼? a1的內存位置是否會擴展到a2的內存位置?
感謝您閱讀本文,請告訴我是否有任何誤解。
非常感謝。清楚的說明;) – 2013-03-13 12:16:00