16.7. Orientation objet en C# : constructeurs et destructeurs

Página 23

Dans la programmation orientée objet en C#, les constructeurs et les destructeurs sont des méthodes spéciales qui sont automatiquement exécutées lorsqu'un objet est créé et détruit. Ils sont essentiels pour initialiser et nettoyer les ressources des objets.

Constructeurs

En C#, un constructeur est une méthode spéciale portant le même nom que la classe. Il est appelé automatiquement lors de la création d'un objet. Le constructeur n'a pas de type de retour, pas même void. Cela la distingue des autres méthodes. Le constructeur est utilisé pour initialiser les champs de données de l'objet et effectuer toute autre configuration nécessaire.

Jeu de classe publique { nom de chaîne publique ; Jeu public (nom de la chaîne) { this.name = nom ; } }

Dans cet exemple, la classe Game a un constructeur qui accepte un paramètre chaîne. Lorsqu'un objet Game est créé, le constructeur est appelé avec la valeur du nom du jeu.

Jeu jeu = nouveau jeu("Super Mario");

Ici, "Super Mario" est passé au constructeur de la classe Game, et le champ nom de l'objet du jeu est initialisé à cette valeur.

Si nous ne définissons pas de constructeur pour une classe, le compilateur C# créera automatiquement un constructeur sans paramètre par défaut pour nous. Ce constructeur par défaut initialisera tous les champs d'objet à leurs valeurs par défaut.

Destructeurs

En C#, un destructeur est une méthode spéciale qui est appelée automatiquement lorsqu'un objet est détruit. Le destructeur porte le même nom que la classe, précédé d'un tilde (~). Le destructeur ne peut pas avoir de paramètres ni de types de retour.

Jeu de classe publique { ~Jeu() { // code pour nettoyer les ressources } }

Dans cet exemple, la classe Game a un destructeur. Le code à l'intérieur du destructeur sera exécuté lorsque l'objet Game sera détruit.

Les destructeurs sont utilisés pour libérer les ressources non gérées que l'objet a pu acquérir au cours de sa durée de vie. Les ressources non gérées sont des ressources que le garbage collector .NET ne peut pas nettoyer automatiquement, telles que les descripteurs de fichiers, les connexions à la base de données ou les tampons de mémoire non gérés.

En C#, nous n'avons pas besoin (et ne pouvons pas) appeler explicitement un destructeur. Le garbage collector .NET appelle automatiquement le destructeur lorsqu'il n'y a plus de références à l'objet. Cependant, nous ne pouvons pas prédire quand le garbage collector effectuera le garbage collection, nous ne pouvons donc pas prédire quand le destructeur sera appelé.

Si nous devons libérer immédiatement des ressources non gérées, nous pouvons implémenter la méthode Dispose de l'interface IDisposable. Nous pouvons appeler Dispose explicitement lorsque nous avons fini d’utiliser l’objet. Dans la méthode Dispose, nous devons libérer toutes les ressources non gérées et appeler GC.SuppressFinalize(this) pour indiquer au garbage collector qu'il n'a pas besoin d'appeler le destructeur.

En bref, les constructeurs et les destructeurs en C# sont des méthodes spéciales qui sont automatiquement appelées lorsqu'un objet est créé et détruit. Ils sont utilisés pour initialiser et nettoyer les ressources des objets. Bien que le garbage collector .NET gère pour nous la plupart des détails de gestion de la mémoire, nous devons toujours comprendre comment et quand utiliser les constructeurs et les destructeurs pour gérer efficacement les ressources.

Répondez maintenant à l’exercice sur le contenu :

Quel est le rôle des constructeurs et des destructeurs dans la programmation orientée objet en C# ?

Tu as raison! Félicitations, passez maintenant à la page suivante

Vous avez raté! Essayer à nouveau.

Page suivante de lebook gratuit :

2416.8. Orientation objet en C# : méthodes et propriétés

Obtenez votre certificat pour ce cours gratuitement ! en téléchargeant lapplication Cursa et en lisant lebook qui sy trouve. Disponible sur Google Play ou App Store !

Get it on Google Play Get it on App Store

+ 6,5 millions
d'étudiants

Certificat gratuit et
valide avec QR Code

48 mille exercices
gratuits

Note de 4,8/5 dans les
magasins d'applications

Cours gratuits en
vidéo, audio et texte