我有一個包含靜態字段的類,如存儲關鍵字的大型列表。然後我有靜態方法在這些靜態字段上工作。我想知道是否靜態字段每次調用靜態方法時都會清空並加載。每次使用時都會調用/加載靜態字段嗎?
回答
這就是正確的靜態字段被加載類的時候得到加載即當程序啓動和它保持,直到程序終止,並且所有創建的對象共享與靜態變量中存在的值相同的值。
我想知道每次我調用靜態方法時靜態字段是否被清空和加載。
沒有,除非你做了,上課時得到的類加載器加載的靜態字段都被初始化
我只將這個類用於靜態方法,所以我想知道該類是否仍然會被加載 –
如果類尚未加載,VM應該從哪些內容獲取實際執行的信息?所以,虛擬機必須加載類,儘管所有東西都被定義爲靜態的。 –
當類首次被運行庫中的jvm需要時,yes類仍將被加載 –
換句話說,靜態字段總是存在。當類加載器加載類時,每個靜態字段在堆內存中都有它的位置。
- 1. 每次使用變量時,PHP函數都會被調用嗎?
- 2. datagridview rowsremoved事件每次加載數據時都會調用
- 3. 在Textview中每次調用類時都會增加字符串
- 4. 加載內容後每次Ajax調用都會增加
- 5. 每次配置更改時,onRetainNonConfigurationInstance()都會調用嗎?
- 6. 每次訪問sessionscoped bean時都會調用方法嗎?
- 7. 每次調用方法時Func都會編譯嗎?
- 8. 每次調用stdio函數都會導致系統調用嗎?
- 9. ViewDid今天的Widget加載每次都會被調用
- 10. getView()int每次加載都會加倍
- 11. 每次都會返回字符串嗎?
- 12. 每次調用jquery函數時都會增加變量
- 13. .net framework listview itemchecked event每次添加項目時都會調用
- 14. 每次調用函數時都會增加一個Int?
- 15. setTimeout在每次清除並重新調用時都會增加
- 16. 每次加載facelets組件時都調用javascript函數
- 17. asp.net:每次有回發到頁面時,都會調用靜態構造函數嗎?
- 18. 每次調用父函數時,C中的靜態變量都會重新分配嗎?
- 19. PhantomJS每次頁面加載時都不會進行所有的AJAX調用
- 20. Android onUpgrade每次都會被調用
- 21. IAuthorizationFilter每次都不會調用
- 22. 在WCF中使用ASP.NET會話=每次調用都會丟失
- 23. 會在每次調整大小時加載圖像嗎?
- 24. 每次調用時都要添加字符串值。
- 25. 每次Codeigniter 2.0緩存驅動程序都會被加載嗎?
- 26. 帶有片段的Android ActionBar每次都會重新加載
- 27. 每次讀取記錄時內存使用量都會增加
- 28. 這個getter在每次引用時都會調用數據庫嗎?
- 29. 每次應用程序註冊時都會調用didRegisterForRemoteNotificationsWithDeviceToken?
- 30. 每次都不顯示靜態圖像
不,他們不是。加載類時只加載一次。 –
@RohitJain所以如果我只用一次這個類,它仍然會被正確加載? –
當然,當你使用一個類,它被加載。 –