Was ist der Unterschied zwischen Extends und Implements in Java?

Was Ist Der Unterschied Zwischen Extends Und Implements In Java



In Java ist das „ erweitert ' Und ' implementiert „Schlüsselwörter sind für die effektive Integration mehrerer Funktionen von entscheidender Bedeutung. Beispielsweise die Vererbung der bereits zugewiesenen Funktionalitäten, um diese zu aktualisieren bzw. die Daten entsprechend zu sortieren. In solchen Fällen sind die Schlüsselwörter „extends“ und „implements“ hilfreich, um den Entwicklern die Arbeit zu erleichtern und die Ressourcen effizient zu verwalten.

In diesem Blog werden die Unterschiede zwischen Java „Extends“ und „Implements“ hervorgehoben.







Java „extends“-Schlüsselwort

Das Java“ erweitert Das Schlüsselwort „ wird von einer untergeordneten Klasse verwendet, d. h. „ abgeleitet ” um die übergeordnete Klasse zu erben, d. h. „ Base ” durch Zugriff auf seine Funktionen.



Syntax



Klasse a {
// Körper
}
Klasse B erweitert A {
// Körper
}





In dieser Syntax: „ B „entspricht der untergeordneten Klasse, die die übergeordnete Klasse erbt“ A ” über die „ erweitert ' Stichwort.

Beispiel 1: Verwendung des Schlüsselworts „extends“ in Java



Dieses Beispiel verwendet das „ erweitert ” Schlüsselwort zum Erben des übergeordneten Elements, d. h. „ Base ' Klasse:

Klasse Parentclass {
Zeichenfolge x = 'Haar' ;
}
Die Kinderklasse der Klasse erweitert die Elternklasse {
öffentliche String-Verknüpfung ( ) {
zurückkehren x.concat ( „ry“ ) ;
} }
öffentliche Klasse Extends {
Public static void Main ( String-Argumente [ ] ) {
Childclass-Objekt = neue Childclass ( ) ;
System.out.println ( object.concat ( ) ) ;
} }

Führen Sie gemäß dem obigen Codeausschnitt die folgenden Schritte aus:

  • Deklarieren Sie zunächst eine übergeordnete Klasse mit dem Namen „ Elternklasse “.
  • Initialisieren Sie in seiner Definition die angegebene Variable.
  • Erben Sie nun eine untergeordnete Klasse von der übergeordneten Klasse über „ erweitert ' Stichwort.
  • Definieren Sie in der Definition der untergeordneten Klasse eine Funktion mit dem Namen „ concat() “.
  • Rufen Sie in der Funktionsdefinition die Variable aus der übergeordneten Klasse auf und hängen Sie die angegebene Zeichenfolge über das zugehörige „“ an. concat() ' Methode.
  • Im ' hauptsächlich() ”-Methode, erstellen Sie ein untergeordnetes Klassenobjekt mit der „ neu ” Schlüsselwort und das „ Kinderklasse() ' Konstrukteur.
  • Rufen Sie abschließend die untergeordnete Klassenfunktion auf „ concat() ” über das erstellte Objekt.

Ausgang

In dieser Ausgabe kann man sich vorstellen, dass die Funktionalität der übergeordneten Klasse, d. h. „ Variable(x) „wird über das Schlüsselwort „extends“ entsprechend vererbt und die Zeichenfolge entsprechend verkettet.

Java „implementiert“ das Schlüsselwort

Der ' implementiert Das Schlüsselwort „“ wird angewendet, um eine Schnittstelle in der Klasse aus derselben oder einer externen Datei zu implementieren.

Syntax

öffentliche Schnittstelle InterfaceName {
nichtig x ( ) ;
Standard ungültig y ( ) {
// Körper
}
}
Klasse z implementiert InterfaceName {
// Klassenkörper
}

In dieser Syntax:

  • X „bezieht sich auf eine abstrakte Methode.
  • Und „gibt die Standardmethode an.
  • Klasse z „ entspricht der Klasse, die „ implementiert Schnittstellenname ” Schnittstelle über die „ implementiert ' Stichwort.

Beispiel 2: Verwendung des Schlüsselworts „implements“ in Java

In diesem speziellen Beispiel besteht eine Schnittstelle aus „ abstrakt ' Und ' Standard „Methoden können in der Klasse implementiert werden.

Schnittstellencode

Zeitalter der öffentlichen Schnittstelle {
öffentlicher leerer Name ( ) ;
Standardmäßig ungültiges Geburtsdatum ( ) {
System.out.println ( „Geburtsdatum -> 28.8.1999“ ) ;
} }

Fügen Sie im obigen Schnittstellencode eine abstrakte Methode mit dem Namen „ Name() ” und definieren Sie die Standardmethode „ Geburtsdatum() ”Drucken der angegebenen Nachricht bzw.

Klassencode

Fahren Sie nun mit den folgenden Codezeilen fort:

Klassenbeispiel implementiert Alter {
öffentlicher leerer Name ( ) {
System.out.println ( „Name -> David“ ) ;
} }
öffentliche Klassenschnittstelle2 {
Public static void Main ( String-Argumente [ ] ) {
Beispielobjekt = neues Beispiel ( ) ;
Objektname ( ) ;
Objekt.Geburtsdatum ( ) ;
} }

In diesem Codeblock:

  • Definieren Sie eine Klasse mit dem Namen „ Probe „Implementierung der Schnittstelle“ Alter ” über die „ implementiert ' Stichwort.
  • Definieren Sie in seiner (Klassen-)Definition die abstrakte Methode „ Name() ” in der Schnittstelle angegeben, die den angegebenen Namen anzeigt.
  • Im ' hauptsächlich() ”-Methode erstellen Sie ein Klassenobjekt über den besprochenen Ansatz.
  • Rufen Sie abschließend die abstrakte und die Standardmethode jeweils mit dem erstellten Objekt auf.

Ausgang

Dieses Ergebnis impliziert, dass die Standardmethode aufgerufen und die abstrakte Methode basierend auf der implementierten Schnittstelle entsprechend angewendet wird.

Hauptunterschiede zwischen „extends“ und „implements“ in Java

Im Folgenden sind einige der Hauptunterschiede zwischen den Schlüsselwörtern „extends“ und „implements“ in Java aufgeführt:

erweitert implementiert
Dieses Schlüsselwort kann von einer Klasse verwendet werden, um ihre übergeordnete Klasse zu erben, oder von einer Schnittstelle, um andere Schnittstellen zu erben. Eine Klasse kann die Schnittstelle über das Schlüsselwort „implements“ implementieren.
Es kann nur eine übergeordnete Klasse um eine Klasse erweitert werden. Eine Klasse kann mehrere Schnittstellen gleichzeitig implementieren/anwenden.
Es ist nicht zwingend erforderlich, dass eine untergeordnete Klasse, die eine übergeordnete Klasse erweitert, alle Methoden in einer übergeordneten Klasse überschreibt. Es ist zwingend erforderlich, dass eine Klasse, die eine Schnittstelle implementiert, auch alle Schnittstellenmethoden implementieren/anwenden muss.

Abschluss

Der ' erweitert Das Schlüsselwort „ kann von einer Klasse oder einer Schnittstelle verwendet werden, um ihre übergeordnete Klasse oder andere Schnittstellen zu erben, während das Schlüsselwort „ implementiert Das Schlüsselwort „wird von einer Klasse verwendet, um eine Schnittstelle zu implementieren. Dieser Blog demonstrierte anhand praktischer Beispiele die Unterschiede zwischen „extends“ und „implements“ in Java.