- 相關(guān)推薦
關(guān)于Java中對(duì)象的銷(xiāo)毀方法分析
本文較為詳細(xì)的分析了Java中對(duì)象的銷(xiāo)毀方法。分享給大家供大家參考。具體分析如下:
Java中的基本數(shù)據(jù)類(lèi)型變量和對(duì)象的名稱(chēng)引用變量如定義在方法中,都為局部變量。但對(duì)象本身不一定是局部生命周期。如函數(shù)外存在其他對(duì)該對(duì)象的引用變量,則該對(duì)象的生命周期延伸至該其他引用變量所在的塊。
如從被調(diào)用函數(shù)參數(shù)引用傳值或返回值到主調(diào)用函數(shù)所在的對(duì)象類(lèi)型變量中,則該對(duì)象都仍存在(但被調(diào)用函數(shù)的該對(duì)象的引用變量生命周期結(jié)束,因此引用變量是局部變量),此時(shí)對(duì)象突破了局部變量的局部生命期。
Java對(duì)象銷(xiāo)毀
Java中垃圾收集器自動(dòng)地定期掃描Java對(duì)象的動(dòng)態(tài)內(nèi)存,并將所有的引用對(duì)象加上標(biāo)記,在對(duì)象運(yùn)行結(jié)束后(無(wú)引用變量對(duì)該對(duì)象進(jìn)行關(guān)聯(lián)),清除其標(biāo)記,并將所有無(wú)標(biāo)記的對(duì)象作為垃圾進(jìn)行回收,釋放垃圾對(duì)象所占的內(nèi)存空間。
對(duì)象運(yùn)行結(jié)束后或生命周期結(jié)束時(shí),將成為垃圾對(duì)象,但并不意味著就立即會(huì)被回收,僅當(dāng)垃圾收集器空閑或內(nèi)存不足時(shí),才會(huì)回收他們。
Java中每個(gè)對(duì)象都擁有一個(gè)finalize()方法:
protected void finalize()throws Throwable{}
垃圾回收器在回收對(duì)象時(shí)自動(dòng)調(diào)用對(duì)象的finalize()方法來(lái)釋放系統(tǒng)資源。
finalize()函數(shù)原型:
protected void finalize() Called by the garbage collector on an object when garbage
collection determines that there are no more references to
the object. 希望本文所述對(duì)大家的java程序設(shè)計(jì)有所幫助。
【Java中對(duì)象的銷(xiāo)毀方法分析】相關(guān)文章:
Java中創(chuàng)建對(duì)象的5種方法06-04
Java將對(duì)象保存到文件中再?gòu)奈募凶x取對(duì)象的方法推薦09-05
Java中創(chuàng)建對(duì)象的方式08-02
Java中Class對(duì)象詳解09-03
java方法重寫(xiě)的方法分析09-04
java面向?qū)ο缶幊痰姆椒ㄙY料06-05