我已閱讀的關於java finalize方法的所有內容均表示使用而不是。看起來它幾乎不能保證被調用,即使它出現問題也可能出現問題。是否有任何需要java的finalize方法?
還有一些問題提出了什麼時候使用它,似乎普遍的共識是從不。
我從來沒有用它自己(因爲警告不主要),我還沒有看到它的任何地方使用。
是否有任何適合的情況?有沒有別的辦法的情況?
如果不是,那爲什麼呢?是否有內部類使用它並要求方法可用?或者它只是不應該在那裏的東西?
我不在的時候,我應該使用它那麼多的興趣(已回答「從不」),但澄清爲什麼它甚至沒有給出「絕不」這個問題的答案。如果它如此無用和危險,爲什麼它沒有被折舊和清除?
http://stackoverflow.com/questions/158174/why-would-you-ever-implement-finalize – Alex
@Alex我的問題是類似的,但我不認爲它是完全一樣的。我並沒有問這麼多爲什麼我會用它(我不應該)爲什麼它首先出現在那裏(因爲我不應該)。由於某種原因,java API是否需要它?由於某種原因,JVM是否必須在所有對象上看到該方法?或者有沒有其他的選擇? (其中的第三個問題由你鏈接的問題解決,但前兩個不是)。 – Matthew
@Alex我編輯了我的標題,使這個區別更清晰一些。 – Matthew