Différence clé - Constructeur vs Destructeur
La plupart des langages de programmation prennent en charge la programmation orientée objet (POO). C'est le paradigme qui aide à modéliser un logiciel ou un programme à l'aide d'objets. La POO améliore la productivité et la maintenabilité. En POO, tout est considéré comme un objet. Les objets sont créés ou instanciés à l'aide de classes. Constructeur et Destructeur sont des termes courants dans la programmation orientée objet. Cet article décrit la différence entre un constructeur et un destructeur. Un constructeur et un destructeur sont des fonctions membres spéciales dans une classe. Un constructeur et un destructeur ont le même nom que la classe, mais le destructeur a un signe tilde (~). La principale différence entre un constructeur et un destructeur est qu'un constructeur est utilisé pour allouer de la mémoire à un objet tandis qu'un destructeur est utilisé pour désallouer la mémoire d'un objet.
CONTENU
1. Présentation et différence clé
2. Qu'est-ce qu'un constructeur
3. Qu'est-ce qu'un destructeur
4. Similitudes entre constructeur et destructeur
5. Comparaison côte à côte - Constructeur vs destructeur sous forme tabulaire
6. Résumé
Qu'est-ce qu'un constructeur?
Un constructeur est une fonction membre spéciale de la classe pour allouer de la mémoire à un objet. Il peut être utilisé pour fournir des valeurs aux membres de données. Le constructeur est appelé lors de la création de l'objet. Il porte le même nom que le nom de la classe. Un constructeur ne renvoie aucune valeur. Par conséquent, il ne contient pas de type de retour. Un constructeur peut également accepter des paramètres. Un constructeur avec des paramètres est appelé constructeur paramétré.
Un exemple de constructeur est le suivant.
public class Rectangle {
longueur int, largeur;
Rectangle public (int p, int q) {
longueur = p;
largeur = q;
}
public int CalculateArea () {
return (longueur * largeur);
}
}
Selon le morceau de code ci-dessus, le constructeur a le même nom que le nom de la classe. Le constructeur Rectangle accepte deux paramètres. Ce sont p et q. La valeur entière p est affectée à la longueur. La valeur entière q est affectée à la largeur. Dans calcualteArea, la multiplication de la longueur et de la largeur est calculée pour trouver l'aire du rectangle. Dans le programme principal, le programmeur peut créer un objet de type Rectangle et passer les arguments. par exemple Rectangle rect1 = nouveau Rectangle (2,3). Ensuite, le constructeur paramétré est appelé et affecte les valeurs à la longueur et à la largeur.
Figure 01: Constructeur et Destructeur
Lorsqu'il existe un constructeur sans aucun paramètre, il est appelé constructeur par défaut. Si le programmeur ne définit pas de constructeur, le constructeur par défaut sera appelé. S'il existe une classe en tant que Student et lorsque le programmeur crée un objet de type Student, le constructeur par défaut est appelé. par exemple Student s1 = new Student (); Il peut y avoir plusieurs constructeurs avec différents paramètres et différents types de données dans une classe. Le constructeur approprié peut être appelé en conséquence. Par conséquent, les constructeurs peuvent être surchargés.
Qu'est-ce qu'un destructeur?
Un destructeur est une fonction membre spéciale de la classe. Il est utilisé pour désallouer de la mémoire pour un objet créé par le constructeur. Le destructeur est appelé lorsque l'objet est détruit. Il effectue le stockage de nettoyage qui n'est plus nécessaire. Comme le constructeur, le destructeur a le même nom que la classe. Il contient également un symbole tilde (~).
Un destructeur ne renvoie aucune valeur. Contrairement à un constructeur, le destructeur n'accepte aucun paramètre. Ainsi, destructor ne prend pas en charge la surcharge. La déclaration d'un destructeur est considérée comme une bonne pratique de programmation car elle libère de l'espace mémoire et cet espace peut être utilisé pour stocker d'autres objets. La syntaxe de destructor est similaire à ~ className () {}. par exemple ~ Rectangle () {}; Il ne peut y avoir qu'un seul destructeur dans une classe.
Quelles sont les similitudes entre le constructeur et le destructeur?
- Le constructeur et le destructeur sont associés à des objets.
- Le constructeur et le destructeur ne renvoient aucune valeur.
- Le constructeur et le destructeur sont appelés automatiquement.
Quelle est la différence entre le constructeur et le destructeur?
Diff article au milieu avant la table
Constructeur vs destructeur |
|
Un constructeur est un membre spécial de la classe utilisé pour allouer de la mémoire à un objet. | Un destructeur est un membre spécial de la classe qui est utilisé pour désallouer la mémoire d'un objet. |
Méthode d'appel | |
Un constructeur est appelé lors de la création de l'objet. | Un destructeur est appelé lorsque l'objet est détruit ou supprimé. |
Usage | |
Un constructeur est utilisé pour allouer de la mémoire aux objets. | Un destructeur est utilisé pour désallouer de la mémoire pour les objets. |
Paramètres | |
Un constructeur accepte des paramètres. | Un destructeur n'accepte pas les paramètres. |
Nombre de constructeurs et destructeurs | |
Il peut y avoir plusieurs constructeurs avec un nombre différent de paramètres et différents types de paramètres. | Il peut y avoir un seul destructeur dans la classe. |
Vitesse d'exécution | |
Un constructeur a le même nom que le nom de la classe. | Un destructeur porte le même nom que le nom de classe avec un symbole tilde (~). |
Surcharge | |
Un constructeur peut être surchargé. | Un destructeur ne peut pas être surchargé. |
Résumé - Constructeur vs Destructeur
La POO est un paradigme courant dans le développement de logiciels. Il peut simplifier un projet complexe. Un constructeur et un destructeur sont utilisés dans la POO. Un constructeur et un destructeur ont le même nom que la classe, mais le destructeur a un signe ~. La différence entre un constructeur et un destructeur est qu'un constructeur est utilisé pour allouer de la mémoire à un objet tandis qu'un destructeur est utilisé pour désallouer la mémoire d'un objet.
Téléchargez le PDF de Constructor vs Destructor
Vous pouvez télécharger la version PDF de cet article et l'utiliser à des fins hors ligne conformément à la note de citation. Veuillez télécharger la version PDF ici: Différence entre constructeur et destructeur