首先,這三個關(guān)鍵字都長得很像,但是他們得用法完全不相干,我在剛開始學(xué)習(xí)編程得時候也經(jīng)常弄混這三個。
final關(guān)鍵字:final一般是用于聲明屬性,方法和類得,代表得含義就是屬性不可以改變,方法不能被覆蓋,類不可被繼承,具體可以看下面這段代碼,紅色下劃線部分即為報錯:
finally關(guān)鍵字:finally是異常執(zhí)行語句中得一部分,表示一定會執(zhí)行得部分,通常用于處理報錯后一定執(zhí)行得邏輯,具體看下面代碼:
finalize:finalize是所有類得父類Object類得一個方法,其作用就是防止對象被回收。我們都知道Java有虛擬機(jī)來幫助我們進(jìn)行對象得回收,我們就不必關(guān)心他們具體是怎么操作得,相當(dāng)于程序員沒有辦法去改變這個回收動作。
所以,Java就有這個方法,實(shí)現(xiàn)他得類可以在第壹次被JVM回收得時候,逃過被回收得命運(yùn)一次,第二次在被JVM回收得時候,它就會被真正得回收。
這樣,我們就對回收動作有了一個微弱得影響。不過,一般不推薦使用這個方法。
如果內(nèi)容對您有幫助,希望您能多多點(diǎn)贊收藏加感謝對創(chuàng)作者的支持,激勵感謝分享創(chuàng)作出更加優(yōu)質(zhì)內(nèi)容,謝謝!