java.lang.Object.finalize() 被一個物件在垃圾回收時呼叫,垃圾回收器確定不存在對該物件有更多參照。子類覆蓋finalize方法來組態系統資源或者執行其他清理工作。
以下是java.lang.Object.finalize()方法的宣告
protected void finalize()
NA
This method does not return a value.
Throwable -- 通過該方法產生的異常
下面的例子顯示lang.Object.finalize()方法的使用。
package com.yiibai; import java.util.*; public class ObjectDemo extends GregorianCalendar { public static void main(String[] args) { try { // create a new ObjectDemo object ObjectDemo cal = new ObjectDemo(); // print current time System.out.println("" + cal.getTime()); // finalize cal System.out.println("Finalizing..."); cal.finalize(); System.out.println("Finalized."); } catch (Throwable ex) { ex.printStackTrace(); } } }
讓我們來編譯和執行上面的程式,這將產生以下結果:
Sat Sep 22 00:27:21 EEST 2012 Finalizing... Finalized.