Unterschied zwischen Extends und Implements in Java mit Beispielen

Nach dem Artikel über Java Autoboxing und Unboxing in Java werden wir nun den Unterschied zwischen extends und implements in Java kennenlernen. Beide sind die reservierten Schlüsselwörter in Java, die wir verwenden, um die Eigenschaften eines bereits vorhandenen Elternblocks in den neu erstellten Kindblock zu übernehmen. Sie werden verwendet, um verschiedene Konzepte in Java zu implementieren. Wir werden lernen, was das Java-Schlüsselwort extends und was das Java-Schlüsselwort implements ist, mit Beispielen.

Zunächst wollen wir das Konzept von Java Autoboxing und Unboxing im Detail mit Techvidvan überarbeiten.

Halten Sie sich mit den neuesten Technologietrends auf dem Laufenden, schließen Sie sich TechVidvan auf Telegram

Was ist extends in Java?

  • Das extends-Schlüsselwort in Java ist nützlich, wenn wir die Eigenschaften und Methoden einer Elternklasse an unsere Kindklasse vererben wollen.
  • Das extends-Schlüsselwort stellt die Vererbungsbeziehung zwischen zwei Klassen her.
  • Wir verwenden es beim Erstellen einer abgeleiteten Klasse von der Elternklasse oder beim Erstellen einer Unterklasse von der Oberklasse.
  • Die Regel lautet, dass eine Klasse maximal eine Klasse erweitern kann.
  • Wenn eine Klasse eine andere Klasse erweitert, kann sie die in einer Oberklasse definierten Methoden außer Kraft setzen.
  • Wir verwenden das extends-Schlüsselwort auch, wenn wir wollen, dass eine Schnittstelle eine andere Schnittstelle erweitert oder erbt.

Machen Sie sich mit dem Konzept der Java-Vererbung im Detail mit Techvidvan vertraut.

Code zum Verständnis des extends-Schlüsselworts in Java:

package com.techvidvan.extendsvsimplements;//Parent classclass Country{ String name = "India"; public void display() { System.out.println("This is my country India"); }}//child class extends the parent classclass City extends Country{ // defining additional properties to the derived class String state = "Rajasthan"; String city = "Jaipur";}public class ExtendsDemo{ public static void main(String args) { City obj=new City(); obj.display(); System.out.println("Name of the city is: " + obj.name); System.out.println("City is present in " + obj.state + "state"); }}

Ausgabe:

Das ist mein Land Indien
Name der Stadt ist: Jaipur
Die Stadt liegt im Bundesstaat Rajasthan

Was ist Implements in Java?

  • Wir verwenden das Schlüsselwort implements beim Implementieren einer Schnittstelle.
  • Eine Klasse kann eine Schnittstelle mit dem Schlüsselwort implements implementieren.
  • Eine Schnittstelle ist ein abstrakter Typ in Java, der eine Sammlung von abstrakten Methoden enthält. Wir können eine Schnittstelle nicht instanziieren, d.h. wir können keine Objekte aus einer Schnittstelle erstellen.
  • Wenn eine Klasse eine Schnittstelle implementiert, muss sie alle Methoden definieren, die in der Schnittstelle vorhanden sind, indem sie die Implementierung jeder der Methoden bereitstellt.
  • Wenn die Klasse, die eine Schnittstelle implementiert, nicht die Implementierung aller Methoden der Schnittstelle definiert oder nicht enthält, müssen wir sie als abstrakt deklarieren. Andernfalls gibt der Compiler einen Fehler aus.
  • Java unterstützt keine Mehrfachvererbung, aber wir können Mehrfachvererbung in unserem Code implementieren, indem wir mehrere Schnittstellen in Java verwenden.
  • Eine Schnittstelle kann niemals eine andere Schnittstelle implementieren. Der Grund dafür ist, dass wenn die Schnittstelle eine andere Schnittstelle implementiert, dann muss sie alle Methoden der Schnittstelle definieren, die sie implementiert, aber die Schnittstelle kann keine konkreten Methoden haben, daher kann eine Schnittstelle keine andere Schnittstelle in Java implementieren.

Erweitern Sie Ihr Wissen über Java Interface im Detail mit Techvidvan.

Code zum Verständnis der Implementierung von Java implementiert Schlüsselwort:

package com.techvidvan.extendsvsimplements;//Creating an interfaceinterface MyInterface{ //Declaring abstract methods inside it void displayString(String s); void showNumber(int i);}//Implementing the interface using the implements keywordpublic class MyClass implements MyInterface{ //Implementing all the methods declared in the interface public void displayString(String s) { System.out.println("The string value is: " +s); } public void showNumber(int i) { System.out.println("The integer value is: " +i); } public static void main(String args) { MyClass obj = new MyClass(); obj.displayString("TechVidvan"); obj.showNumber(20); }}

Ausgabe:

Der String-Wert ist: TechVidvan
Der Integer-Wert ist: 20

Beispiel für mehrere Schnittstellen

Nun werden wir ein Beispiel sehen, in dem eine Klasse mehr als eine Schnittstelle gleichzeitig implementiert und somit mehrere Vererbungen in Java einrichtet. Wir werden 3 Interfaces erstellen: Walkable, Swimmable und Talkable und eine Klasse HumanBeing, die alle 3 Schnittstellen implementiert.

1. interface: Walkable.java

package com.techvidvan.extendsvsimplements;public interface Walkable { public void walk();}

2. interface: Swimmable.java

package com.techvidvan.extendsvsimplements;public interface Swimmable{ public void swim();}

3. interface: Talkable.java

package com.techvidvan.extendsvsimplements;public interface Talkable { public void talk();}

4. Klasse: HumanBeing.java

package com.techvidvan.extendsvsimplements;\To implement multiple interfaces we must use commas to separate thempublic class HumanBeing implements Walkable, Swimmable, Talkable{ @Override public void walk() { System.out.println("I can walk"); } @Override public void swim() { System.out.println("I can swim"); } @Override public void talk() { System.out.println("I can talk"); } public static void main(String args) { HumanBeing human= new HumanBeing(); human.walk(); human.swim(); human.talk(); }}

Ausgabe:

Ich kann gehen
Ich kann schwimmen
Ich kann sprechen

Unterschied zwischen Extends und Implements in Java

Wir haben die Beispiele für beide Schlüsselwörter gesehen, lassen Sie uns nun java extends vs. implements im Detail betrachten:

Vergleichsmerkmale Extends Implements
Implementation Das Schlüsselwort extends wird verwendet, wenn eine Klasse alle Eigenschaften von einer anderen Klasse oder einer Schnittstelle erben will, die eine Schnittstelle erben will. Das Schlüsselwort implements wird verwendet, wenn eine Klasse eine Schnittstelle implementieren soll.
Assoziiert mit Es ist assoziiert mit Vererbung Es ist assoziiert mit Abstraktion
Methode Die untergeordnete Klasse, die eine übergeordnete Klasse erweitert, kann oder muss nicht alle Methoden der übergeordneten Klasse außer Kraft setzen. Die Klasse, die eine Schnittstelle implementiert, muss die Implementierung aller in der Schnittstelle deklarierten Methoden definieren oder bereitstellen, oder die Klasse sollte als abstrakt deklariert werden.
Klasse Eine Unterklasse oder mehrere Unterklassen können nur eine Elternklasse gleichzeitig erweitern. Eine Klasse kann eine oder mehrere Schnittstellen gleichzeitig implementieren.
Schnittstelle Eine Schnittstelle kann eine beliebige Anzahl von Schnittstellen erweitern. Eine Schnittstelle kann niemals eine andere Schnittstelle implementieren.

Zusammenfassung

Abschließend kommen wir also zum Ende des Artikels über den Unterschied zwischen extends und implements in Java. Wir sind die wichtigsten Unterschiede zwischen diesen Schlüsselwörtern durchgegangen. Beide verwenden direkt oder indirekt das Konzept der Vererbung in Java. Wir können jedoch feststellen, dass die Implementierung einer Schnittstelle mehr Flexibilität bietet als die Erweiterung einer Klasse, da wir nur eine einzige Klasse erweitern können, aber mehrere Vererbungen in Java implementieren können. Ich hoffe, dass Sie nach der Lektüre dieses Artikels endlich das Schlüsselwort extends vs. implements in Java verstanden haben.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.