Différence entre les outils et les extensions

Différence entre les outils et les extensions
Différence entre les outils et les extensions

Vidéo: Différence entre les outils et les extensions

Vidéo: Différence entre les outils et les extensions
Vidéo: Animer une conférence grâce à une méthode efficace ! 2024, Novembre
Anonim

Implements vs Extends

Implements et Extends sont deux mots clés trouvés dans le langage de programmation Java qui fournissent un moyen de transférer des fonctionnalités supplémentaires vers une nouvelle classe. Le mot-clé Implements est utilisé explicitement pour implémenter une interface, tandis que le mot-clé Extends est utilisé pour hériter d'une (super) classe. Veuillez noter que les concepts d'héritage et d'interfaces sont présents dans la plupart des autres langages de programmation orientés objet comme C et VB. NET, mais ils offrent une syntaxe ou des mots-clés différents pour appliquer ces concepts. Cet article se concentre uniquement sur les mots clés Implements et Extends définis en Java.

Prolonge

Le mot-clé Extends est utilisé pour implémenter le concept d'héritage dans le langage de programmation Java. L'héritage fournit essentiellement la réutilisation du code en permettant d'étendre les propriétés et le comportement d'une classe existante par une classe nouvellement définie. Lorsqu'une nouvelle sous-classe (ou classe dérivée) étend une super classe (ou classe parente), cette sous-classe hérite de tous les attributs et méthodes de la super classe. La sous-classe peut éventuellement remplacer le comportement (fournir des fonctionnalités nouvelles ou étendues aux méthodes) hérité de la classe parent. Une sous-classe ne peut pas étendre plusieurs super classes en Java. Par conséquent, vous ne pouvez pas utiliser les extensions pour l'héritage multiple. Afin d'avoir un héritage multiple, vous devez utiliser les interfaces comme expliqué ci-dessous.

Outils

Le mot-clé Implements du langage de programmation Java est utilisé pour implémenter une interface par une classe. Une interface en Java est un type abstrait utilisé pour spécifier un contrat qui doit être implémenté par des classes qui implémentent cette interface. Habituellement, une interface ne contiendra que des signatures de méthode et des déclarations de constante. Toute interface qui implémente une interface particulière doit implémenter toutes les méthodes définies dans l'interface ou doit être déclarée en tant que classe abstraite. En Java, le type d'une référence d'objet peut être défini comme un type d'interface. Mais cet objet doit être nul ou contenir un objet d'une classe qui implémente cette interface particulière. En utilisant le mot-clé Implements en Java, vous pouvez implémenter plusieurs interfaces dans une seule classe. Une interface ne peut pas implémenter une autre interface. Cependant une interface peut étendre une classe.

Différence entre les outils et les extensions

Bien que Implements et Extends soient deux mots clés qui fournissent un mécanisme pour hériter des attributs et du comportement d'une classe dans le langage de programmation Java, ils sont utilisés à deux fins différentes. Le mot clé Implements est utilisé pour qu'une classe implémente une certaine interface, tandis que le mot clé Extends est utilisé pour qu'une sous-classe s'étende à partir d'une super classe. Lorsqu'une classe implémente une interface, cette classe doit implémenter toutes les méthodes définies dans l'interface, mais lorsqu'une sous-classe étend une super classe, elle peut ou non remplacer les méthodes incluses dans la classe parent. Enfin, une autre différence clé entre Implements et Extends est qu'une classe peut implémenter plusieurs interfaces, mais elle ne peut s'étendre qu'à partir d'une super classe en Java. En général, l'utilisation d'Implements (interfaces) est considérée comme plus favorable par rapport à l'utilisation d'Extends (héritage), pour plusieurs raisons telles qu'une plus grande flexibilité et la possibilité de minimiser le couplage. Par conséquent, dans la pratique, la programmation vers une interface est préférable à l'extension à partir des classes de base.

Conseillé: