2010-07-07 14 views
0

J'ai recherché du code pour la finalisation pour près de 1 mois. Peut-on m'aider pour le code? Merci d'avance.Quelle est la déclaration de fonction pour la méthode Java finalize?

+3

Je vote pour fermer votre question, car il ne se pose pas assez clairement pour recueillir des réponses. Veuillez éditer votre question et préciser ce que vous cherchez. –

+0

Je vote pour rouvrir cette question parce que j'ai cherché le code contenu dans les deux réponses sur le site, et cette question était le premier résultat. J'ai recréé la ligne d'objet pour correspondre à ce que les réponses clairement senti était la question. Aussi, +1. –

Répondre

2

finalize

protected void finalize() throws Throwable 
{ 
    try 
    { 
     //close unmanaged resources 
    } finally { 
     super.finalize(); 
    } 
} 

Notez que l'extérieur des ressources non gérés, vous devriez jamais faire cela ..

+0

+1 Je le fais actuellement parce que je veux voir dans ma vérification de journal qu'une certaine classe est nettoyée. Je suppose que c'est «en dehors des ressources non gérées», mais je trouve cette expression un peu obscurcie. Peut-être que c'est le double négatif caché. Peut-être que je n'utiliserais jamais rien de suffisamment grand pour être goudronné avec l'épithète "Resource Management". –

2
protected void finalize() throws Throwable { 
    try { 
     close();  // close open files 
    } finally { 
     super.finalize(); 
    } 
} 

Vous appelez super.finalize() dans le bloc finally.

Source

+1

On dirait que nous avons tous les deux googlé le même lien - il est difficile de croire qu'un mois de googling ne commence pas avec [ceci] (http://www.google.com/search?q=java+finalize) –

+2

Hahaha , Je suis d'accord! – zengr

+0

Ma première recherche m'a amené ici. Je me suis souvenu de la déclaration appropriée pour cette méthode en lançant quelque chose, et je voulais le voir. Bien sûr, j'ai fait ma première recherche sur SO. –