Unterschied zwischen abstrakter Klasse und Schnittstelle

Autor: Laura McKinney
Erstelldatum: 3 April 2021
Aktualisierungsdatum: 11 Kann 2024
Anonim
Java #012 Abstrakte Klassen & Interfaces
Video: Java #012 Abstrakte Klassen & Interfaces

Inhalt

Hauptunterschied

Der Hauptunterschied zwischen abstrakter Klasse und Schnittstelle besteht darin, dass die Prozeduren der Java-Schnittstelle im Wesentlichen abstrakt sind und keine Anwendungen haben können. Interface ist ein Vertrag, und wenn wir über Interface sprechen, gilt, dass die Methoden keinen Körper haben, sondern nur ein Muster. Während abstrakte Klassen im Grunde genommen die Klassen sind, deren Verwendung teuer ist. Abstrakte Klassen und Schnittstellen sind ein völlig anderes Konzept, dies sind zwei verschiedene Dinge, aber manchmal sind ihre Implementierungen ziemlich ähnlich.


Was ist eine abstrakte Klasse?

Eine abstrakte Klasse wird vom Programmierer nicht vollständig impliziert. Eine abstrakte Klasse kann eine oder mehrere abstrakte Methoden haben. Sie sind nützlich, um eine Klassengruppierung oder -rangfolge zu modellieren, und während dies ausgeführt wird, bekommt der Programmierer die Idee, was gebaut werden muss, nachdem er die Anforderungen gesehen hat. Auf die abstrakte Klasse kann man sich nicht vollständig verlassen, da ihr einige Teile fehlen. Der Hauptpunkt hinter diesem Argument ist, dass die abstrakte Klasse streng objektorientiert ist, obwohl sie eine Methodenüberschrift, aber keinen Hauptteil hat. Wenn wir über abstrakte Klassen sprechen, gibt es eine starke Verbindung zwischen zwei Klassen, da diese Klassen dazu neigen, voneinander zu profitieren oder voneinander zu erben.

Was ist eine Schnittstelle?

Wenn wir über die Schnittstelle sprechen, ist im Gegenteil die Beziehung oder Kommunikation zwischen der Schnittstelle selbst und der Klasse, die die Schnittstelle impliziert, nicht so stark wie in abstrakten Klassen. Eine Java-Klasse kann viele Schnittstellen implementieren, aber von einer einzelnen abstrakten Klasse erben. Das heißt, wenn Sie viele Interaktionen gleichzeitig implizieren möchten, ist die Schnittstelle Ihr Ding. Abgesehen von diesem ganzen Szenario ist die Schnittstelle die beste Option für Sie, auch wenn Sie möchten, dass sich die API für eine Weile nicht ändert. Schnittstelle ist eigentlich der Vertrag zwischen zwei verschiedenen Objekten. Um es kurz zu machen, die Benutzeroberfläche dreht sich um die Funktionalität.


Hauptunterschiede

  1. Eine abstrakte Klasse ist objektorientiert, während die Schnittstelle funktionsorientiert ist.
  2. Wenn Sie möchten, dass die API eine Weile konstant bleibt, wählen Sie die Schnittstelle anstelle der abstrakten Klasse.
  3. Mehrfache Vererbungen könnten durch das Einbeziehen mehrerer Schnittstellen erzielt werden. In der abstrakten Klasse können Sie nicht mehrere Vererbungen erhalten.
  4. Wenn Sie eine Stimmung haben, die Sie in Zukunft in Ihrer Arbeit hinzufügen müssten, ist die abstrakte Klasse ausgewählt, nicht die Schnittstelle.
  5. Die abstrakte Klasse gibt eine gemeinsame Basisklassenanwendung an, aber nichts davon passiert in der Schnittstelle.
  6. In interface sind alle von Ihnen implementierten Methoden öffentlich, in abstract class können Sie jedoch auch einige nicht öffentliche Methoden anwenden.
  7. Konstruktoren gibt es nicht in der Schnittstelle, aber sie kommen in der abstrakten Klasse vor.
  8. Ein vollständiges Mitglied der abstrakten Klasse könnte statisch sein, aber nicht der Schnittstelle.

Die wienchaftliche Methode it die umfaende Methode zur Überprüfung der Gültigkeit der verchiedenen Phänomene und Auagen. E beteht hauptächlich au den ech grundlegenden chritte...

Der Hauptunterchied zwichen Einzelhandel und Handel it, da die Einzelhandel it ein Verkauf von Waren und Dientleitungen von Einzelperonen oder Unternehmen an den Endverbraucher und Handel it ein Autau...

Populäre Artikel