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.