本文目錄一覽:
java垃圾回收是什麼?
垃圾回收叫做GC:garbage collection,是java虛擬機JVM提供的一種內存回收方式。開發者在使用java開發的時候不需要像使用C/C++一樣去手動釋放內存,虛擬機會通過自動檢測的方式,去釋放內存。比如你用java new了一個對象,這個時候你得到了一個強引用,strong reference。當你不在需要這個對象的時候,你只需要把它設置成null。這個時候JVM並不會立刻回收掉這塊內存,在之後的某個時間點,當JVM檢測內存的時候發現這塊內存已經沒有任何強引用了,就會把它釋放掉。
java的內存回收既可以由系統完成也可以由程序員完成嗎?
程序員對於GC只有建議權沒有執行權,所以java的內存回收只能由系統完成。
java關於內存回收的說明
什麼意思?這四個全部是錯的。在Java中:
a. 程序員不需要創建線程來釋放內存。b. 程序員也不需要負責釋放無用內存。c. 也不允許程序員直接釋放內存。d. 不一定在什麼時刻執行垃圾回收。
總的來說,垃圾回收機制就是由JVM自動執行的,由JVM決定何時執行的 過程。程序員只能決定一個類在回收時所要做的動作(通過重載Object類的finalize()方法),以及提交JVM觸發垃圾回收(通過System.gc(),但不保證會執行垃圾回收)。
原創文章,作者:CEAXU,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/329664.html