Maison  >  Article  >  Java  >  Explication détaillée du rôle de finalize() dans le garbage collection Java

Explication détaillée du rôle de finalize() dans le garbage collection Java

高洛峰
高洛峰original
2017-01-17 15:46:471821parcourir

Cas d'utilisation de la méthode finalize

package test;
    
class TestGC {
  private String str = "hello";
    
  TestGC(String str) {
    this.str = str;
  }
    
  public void finalize() {
    System.out.println(str);
  }
}
    
public class Hello {
  /**
   * @param args
   */
  public static void main(String[] args) {
    // TODO 自动生成方法存根
    System.out.println("hello");
    
    TestGC test = new TestGC("test1");
    test = new TestGC("test2");
    test = null;//注释掉这一句,test1被回收。加上则先回收test2,后test1
    System.gc();
  }
}

La méthode finalize() est définie dans la classe Object, donc toutes les classes en héritent. Les sous-classes remplacent la méthode finalize() pour organiser les ressources système ou effectuer d'autres travaux de nettoyage. La méthode finalize() est appelée sur l'objet avant que le garbage collector ne le supprime.

Ce qui précède est une introduction à l'utilisation de Java garbage collection finalize(). J'espère que cela sera utile à l'apprentissage de chacun.

Pour des explications plus détaillées sur le rôle de finalize() dans le garbage collection Java et les articles connexes, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn