Destructeur

Définition - Que signifie Destructor?

Un destructeur est une méthode spéciale appelée automatiquement lors de la destruction d'un objet. Les actions exécutées dans le destructeur sont les suivantes:

  • Récupération de l'espace de tas alloué pendant la durée de vie d'un objet
  • Fermeture des connexions de fichiers ou de bases de données
  • Libération des ressources réseau
  • Libération des verrous de ressources
  • Autres tâches d'entretien ménager

Definir Tech explique Destructor

Les destructeurs sont appelés explicitement en C ++. Cependant, en C # et Java ce n'est pas le cas, car l'allocation et la libération de la mémoire allouée aux objets sont implicitement gérées par le garbage collector. Alors que les destructeurs en C # et Java (appelés finaliseurs) ne sont pas déterministes, les destructeurs C # sont garantis pour être appelés par le runtime .NET. Cependant, les finaliseurs Java doivent être explicitement appelés car leur appel n'est pas garanti.

Les propriétés clés des destructeurs peuvent être résumées comme suit:

  • Appel automatique et aucun appel explicite à partir du code utilisateur
  • Surcharge ou héritage non autorisé
  • Accéder aux modificateurs ou aux paramètres à ne pas spécifier
  • L'ordre d'appel du destructeur dans une classe dérivée va du plus dérivé au moins dérivé
  • Appelé non seulement lors de la destruction de l'objet, mais également lorsque l'instance d'objet n'est plus éligible pour l'accès
  • Utilisé dans les classes mais pas dans les structures
  • Utilisé uniquement pour libérer des ressources non gérées coûteuses (telles que Windows, connexion réseau, etc.) que l'objet contient, plutôt que pour libérer des références gérées