utilisation de finalize() ?
Bonjour à tous,
j'ai créé une classe contenant la méthode finalize() suivant:
Code:
1 2 3 4 5 6 7
|
class MaClasse {
.....
protected void finalize(){
System.out.println("Objet détruit");
}
} |
Ensuite j'ai crée la classe suivante:
Code:
1 2 3 4 5 6
| class TestClasse {
public void main(String[]a) {
MaClasse c = new MaClasse();
System.gc() ;
}
} |
lors de l'execution le message Objet détruit ne s'affiche pas :!: par contre si j'ajoute l'instruction suivante avant l'appel du ramasse miettes le message s'affiche
Pourquoi je suis obligé d'ajouter cette instruction pour que finalize() s'execute :question: