Re: [問題] static variable

看板java作者 ( )時間13年前 (2012/08/27 17:53), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《alan77916 (啦~好想幸福呀~!)》之銘言: : 最近剛開始學JAVA : 所以遇到了點問題想請教各位大大 : 因為我從書上看到他寫說 : static variable在該class第一次被初始化後會被建立起來 : 爾後該class的object操作到的都會是同一個static variable : 但書上卻沒有提到說 若所有的object被摧毀時 : 則此static variable會如何? : 那如果此時再新增一個此class的object的話 : 則static variable會被renew還是會是同一個呢? : 另外想詢問一下 此變數在記憶體中到底是如何操作的 : 因為為何可以所有object都refer到同一個變數 : 感謝大大的回答了<(_ _)> : 如果有表達不清 或是搞錯的地方 還煩請賜教 放在Class<T> object裡面,所以即使沒有T object,static field還是會存在, Class object則是在語言標準裡面規定的時間點會被ClassLoader建立。 另外要讓對應的Class<T> object被回收只能靠回收建立它的ClassLoader object, 不過class loader在標準只有說可以被回收,沒有說一定要回收。 簡單示意圖: load ClassLoader <------ byte[] binary definition of class T | |create when needed | access --> Class<T> <-------- T.field/T.method() -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.72.92.133
文章代碼(AID): #1GEqERhh (java)
討論串 (同標題文章)
文章代碼(AID): #1GEqERhh (java)