Interfaces et classes abstraites en Java

Table des matières
Bien que les deux structures puissent sembler similaires car elles forcent les classes qui les utilisent à créer les méthodes qu'elles possèdent et à les utiliser pour qu'elles soient valides, elles présentent des différences clés entre elles, ce qui peut nous éclairer davantage sur la façon dont nous pouvons les utiliser. .
Les différences, bien qu'elles soient subtiles, nous permettent d'utiliser les deux structures même en combinaison, de cette manière nous pouvons obtenir un plus grand ordre dans notre projet et créer des applications qui nous permettent de mieux reproduire les objets du monde réel dans un format numérique.
RestrictionsLa principale différence que nous voyons entre cours abstraits et interfaces est que le premier est une classe et le second ne l'est pas, même si le interface a une structure similaire fait face à des restrictions qui ne se trouvent pas dans un classe abstraite.
VariablesLa classe abstraite n'a aucune restriction sur l'utilisation des variables, cependant le interface si c'est le cas, en fait toutes les variables que nous allons utiliser doivent être public, statique ou final.
Dans ce cas le constructeur de la classe abstraite doit être invoqué via des sous-classes, ce qui laisse de côté la possibilité de l'instancier via l'opérateur Nouveau.
Dans le cas d interface, cela ne peut pas avoir de constructeur car ce n'est pas une classe, ce qui nous fait également écarter la création d'instances avec l'opérateur Nouveau.
MéthodesDans une interface les méthodes doivent être résumé public D'un autre côté, dans la classe abstraite, nous pouvons placer n'importe quel type de méthode sans problème, ce qui fait une différence de plus pour nous.
Un autre point que nous devons prendre en compte est la manière de faire l'héritage et l'implémentation que nous pouvons réaliser avec ces deux structures dans Java, nous savons que lorsque nous faisons patrimoine Dans une classe, on ne peut hériter directement que d'une classe supérieure, c'est-à-dire que si on veut hériter de deux classes différentes, il faut créer comme un effet de cascade, où une première classe hérite de la classe supérieure puis une autre classe hérite de ceci pour obtenir sa fonctionnalité et celle de sa classe parent.
Dans interfaces Ce problème ne se produit pas, en fait nous pouvons hériter directement de plusieurs interfaces, donc si nous voulons obtenir leurs méthodes nous pouvons le faire sans problème.

Dans le cas d mise en place d'une interface dans une classe abstraite si nous avons plus de liberté, dans ce cas, nous pouvons implémenter plusieurs interfaces sans aucune restriction dans ce cas, ce qui nous donne la possibilité de créer une interface parent plus complexe pour ainsi dire. L'important ici est de savoir et de prendre en compte qu'une interface n'est pas une classe et donc ne peut en hériter, elle ne peut que faire héritage d'autres interfaces.

Avec cela nous terminons ce tutoriel, nous avons vu les différences de restrictions et d'implémentation dans nos programmes de ces deux structures en JavaBien que les deux servent à modéliser et à définir des comportements, chacun a son propre espace, donc quand nous les connaîtrons mieux, nous pourrons décider lequel utiliser dans nos programmes réalisés avec ce langage.Avez-vous aimé et aidé ce tutoriel ?Vous pouvez récompenser l'auteur en appuyant sur ce bouton pour lui donner un point positif

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave