可達的/可觸及的
Java對象呗建立後,如果被一個或者多個變量引用,那就是可達的,即從根節點可以觸及到這個對象。
其實就是從根節點掃描,隻要這個對象在引用鍊中,那就是可觸及的。
可恢複的
Java對象不再被任何變量引用就進入了可恢複狀态。
在回收該對象之前,該對象的finalize()方法進行資源整理,如果在finalize()方法中重新讓變量引用該對象,則該對象再次變為可達狀态,否則該對象進入不可達狀态。
不可達的:
Java對象不被任何變量引用,且系統在調用對象的finalize()方法後依然沒有使該對象程式設計可達(該對象依然沒有被變量引用),那麼該對象将程式設計不可達狀态。
當Java對象處于不可達狀态時,喜用才會真正回收該對象占有的資源。
心再堅強也不要獨自飛翔