Différence entre classe abstraite et interface

Auteur: Laura McKinney
Date De Création: 3 Avril 2021
Date De Mise À Jour: 12 Peut 2024
Anonim
Différence entre classe abstraite et interface - Éducation
Différence entre classe abstraite et interface - Éducation

Contenu

Différence principale

La principale différence entre la classe abstraite et l'interface est que les procédures de l'interface Java sont essentiellement abstraites et ne peuvent avoir d'applications. En résumé, l’interface est en fait un contrat et lorsque nous parlons d’interface, cela signifie que les méthodes n’ont pas de corps, c’est juste un modèle. Alors que les classes abstraites sont fondamentalement les classes qui sont coûteuses à utiliser. Les classes abstraites et l'interface sont un concept totalement différent. Ce sont deux choses différentes mais parfois, leurs implémentations sont assez similaires.


Qu'est-ce que la classe abstraite?

Une classe abstraite n'est pas complètement impliquée par le programmeur. Une classe abstraite peut avoir une ou plusieurs méthodes abstraites. Ils sont utiles pour modéliser un regroupement ou un classement de classes et, pendant ce processus, le programmeur se fait une idée de ce qui doit être construit après avoir vu les exigences. On ne peut pas se fier complètement à la classe abstraite car elle manque de certaines parties. Le point principal de cet argument est que la classe abstraite est strictement orientée objet, bien qu’elle ait un en-tête de méthode mais pas de corps. Lorsque nous parlons de classes abstraites, il existe un lien étroit entre deux classes, car ces classes ont tendance à gagner ou à hériter l'une de l'autre.

Qu'est-ce que l'interface?

Lorsque nous parlons d’interface, au contraire, la relation ou la communication entre l’interface elle-même et la classe impliquant l’interface n’est pas aussi forte que dans les classes abstraites. Une classe Java peut implémenter de nombreuses interfaces mais peut hériter d'une seule classe abstraite. Cela signifie donc que lorsque vous voulez impliquer plusieurs interactions en même temps, l'interface est votre truc. En dehors de tout ce scénario, même si vous ne souhaitez pas que l'API change pendant un certain temps, l'interface est la meilleure option pour vous. L'interface est en réalité le contrat entre deux objets différents. Pour faire court, l'interface s'articule autour de la fonctionnalité.


Différences Clés

  1. Une classe abstraite est orientée objet tandis que l'interface est orientée fonction.
  2. Lorsque vous voulez que l'API reste constante pendant un moment, vous choisissez l'interface plutôt que la classe abstraite.
  3. Des héritages multiples pourraient être obtenus en impliquant plusieurs interfaces. En classe abstraite, vous ne pouvez pas obtenir plusieurs héritages.
  4. Si vous avez une ambiance dont vous auriez besoin à l'avenir, vous devrez ajouter des méthodes à votre travail, alors la classe abstraite est choisie, pas une interface.
  5. La classe abstraite donne une application de classe de base commune mais rien de tel ne se produit dans l'interface.
  6. En interface, toutes les méthodes que vous implémentez sont publiques, mais en classe abstraite, vous pouvez également appliquer des méthodes non publiques.
  7. Les constructeurs ne sont pas là dans l'interface mais ils se produisent dans la classe abstraite.
  8. Le membre complet de la classe abstraite peut être statique mais pas d'interface.

La principale différence entre l'amlodipine et la nifédipine réide dan le fait que l'amlodipine et un bloqueur de canaux calcique à action prolongée, tandi que la nif&...

La principale différence entre taxi et kinéi réide dan le fait que le taxi e réfèrent à un mouvement pécifique et directionnel alor que kinei e réfère ...

Intéressant