在 Java 垃圾回收中使用 finalize() 方法


當垃圾回收器確定對某個特定物件不再進行引用時,該垃圾回收器就會呼叫該物件的 finalize() 方法。finalize() 方法不需要任何引數,也不會返回值。

下面展示了演示 Java 中 finalize() 方法的程式

示例

 演示

import java.util.*;
public class Demo extends GregorianCalendar {
   public static void main(String[] args) {
      try {
         Demo obj = new Demo();
         System.out.println("The current time is: " + obj.getTime());
         obj.finalize();
         System.out.println("The finalize() method is called");
      } catch (Throwable e) {
         e.printStackTrace();
      }
   }
}

輸出

The current time is: Tue Jan 15 13:21:55 UTC 2019
The finalize() method is called

現在讓我們瞭解一下上面的程式。

在類 Demo 中的 main() 方法中,建立了 Demo 的一個物件 obj。然後使用 getTime() 方法列印當前時間。接著呼叫 finalize() 方法。演示該方法過程的程式碼如下

try {
   Demo obj = new Demo();
   System.out.println("The current time is: " + obj.getTime());
   obj.finalize();
   System.out.println("The finalize() method is called");
}
catch (Throwable e) {
   e.printStackTrace();
}

更新日期:30-Jul-2019

1 千次以上的瀏覽量

開啟您的 職業 生涯

透過完成本門課程,獲得認證

開始學習
廣告