Unterschied Zwischen Vererbung Und Schnittstelle In Java

Inhaltsverzeichnis:

Unterschied Zwischen Vererbung Und Schnittstelle In Java
Unterschied Zwischen Vererbung Und Schnittstelle In Java

Video: Unterschied Zwischen Vererbung Und Schnittstelle In Java

Video: Unterschied Zwischen Vererbung Und Schnittstelle In Java
Video: Vererbung in Java für Anfänger 2024, Kann
Anonim

Hauptunterschied - Vererbung vs. Schnittstelle in Java

Java ist eine von Sun Microsystems entwickelte Programmiersprache. Java kann verwendet werden, um verschiedene Anwendungen zu entwickeln. Es ist eine Multi-Paradigmen-Sprache, die objektorientierte, strukturierte usw. unterstützt. Der Hauptvorteil von Java besteht darin, dass es objektorientierte Programmierung (OOP) unterstützt. Der Programmierer kann Klassen und Objekte erstellen. Es gibt vier Säulen in OOP. Sie sind Vererbung, Polymorphismus, Abstraktion und Verkapselung. Vererbung und Schnittstellen beziehen sich auf OOP. Der Hauptunterschied zwischen Vererbung und Schnittstelle besteht darin, dass bei der Vererbung neue Klassen aus vorhandenen Klassen abgeleitet werden und bei einer Schnittstelle abstrakte Klassen und Mehrfachvererbung implementiert werden.

INHALT

1. Überblick und Hauptunterschied

2. Was ist Vererbung in Java

? 3. Was ist Schnittstelle in Java?

4. Ähnlichkeiten zwischen Vererbung und Schnittstelle in Java.

5. Vergleich nebeneinander - Vererbung und Schnittstelle in Java in tabellarischer Form.

6. Zusammenfassung

Was ist Vererbung in Java?

Durch Vererbung kann die Wiederverwendbarkeit von Code erreicht werden. Durch Vererbung können die Attribute und Methoden einer vorhandenen Klasse wiederverwendet werden. Der Mechanismus zum Ableiten einer neuen Klasse unter Verwendung einer alten Klasse wird als Vererbung bezeichnet. Die alte Klasse ist als Elternklasse oder Superklasse bekannt. Die abgeleitete Klasse wird als untergeordnete Klasse oder Unterklasse bezeichnet.

Die Syntax der Java-Vererbung lautet wie folgt.

Klasse Unterklassenname erweitert Oberklassenname {

variable Aussage;

Methodendeklaration;

}}

Das Vererbungskonzept kann anhand des folgenden Beispiels erläutert werden. Angenommen, es gibt eine Klasse namens A wie folgt.

öffentliche Klasse A {

public void sum () {

System.out.println ("Summe");

}}

}}

Wenn Sie eine neue Methode hinzufügen möchten, ohne die vorhandene Klasse zu ändern, können Sie dies wie folgt tun.

öffentliche Klasse B {

public void sub () {

System.out.println ("Sub");

}}

}}

Der Programmierer kann die Vererbung verwenden, um die Summe der Klasse A () zu verwenden.

öffentliche Klasse B erweitert Klasse A {

public void sub () {

System.out.println ("Sub");

}}

}}

In der Hauptfunktion ist es möglich, ein Objekt von B zu erstellen und sub (), das zur Klasse B gehört, und sum (), das zur Klasse A gehört, mit Vererbung aufzurufen.

public static void main (String args) {

B obj = neues B ();

obj ();

obj.sum ();

}}

Es gibt verschiedene Arten der Vererbung. Sie sind Einzelvererbung, Mehrfachvererbung, mehrstufige Vererbung und hierarchische Vererbung. Bei der Einzelvererbung gibt es eine Basisklasse und eine abgeleitete Klasse. Bei der mehrstufigen Vererbung gibt es drei Klassen, nämlich Basisklasse, Zwischenklasse und abgeleitete Klasse. Die Zwischenklasse erbt von der Basisklasse und die abgeleitete Klasse erbt von der Zwischenklasse. Bei der hierarchischen Vererbung gibt es eine Basisklasse und viele abgeleitete Klassen. Es gibt einen speziellen Typ, der als Hybridvererbung bekannt ist. Es ist eine Kombination aus zwei oder mehr Arten der Vererbung.

Unterschied zwischen Vererbung und Schnittstelle in Java
Unterschied zwischen Vererbung und Schnittstelle in Java

Abbildung 01: Vererbung

Bei der Mehrfachvererbung gibt es viele Basisklassen und eine abgeleitete Klasse. Angenommen, Klasse A und B sind die Basisklassen. Klasse C ist die abgeleitete Klasse. Wenn sowohl die A- als auch die B-Klasse dieselbe Methode haben und der Programmierer diese Methode von der abgeleiteten Klasse aufruft, führt dies zu einem Mehrdeutigkeitsproblem. Das Erben von zwei Klassen kann zu einem Fehler bei der Kompilierung führen. Daher wird Mehrfachvererbung in Java nicht unterstützt. Eine Schnittstelle kann verwendet werden, um dieses Problem zu überwinden.

Was ist die Schnittstelle in Java?

Bei der Abstraktion werden die Implementierungsdetails ausgeblendet und dem Benutzer nur die Funktionen angezeigt. Die Abstraktion kann mithilfe von abstrakten Klassen oder Schnittstellen erreicht werden. Eine abstrakte Methode ist eine Methode ohne Implementierung. Eine Klasse mit mindestens einer abstrakten Methode ist eine abstrakte Klasse. Ein Beispiel für eine abstrakte Klasse ist wie folgt.

abstrakte Klasse A {

abstrakte Leersumme ();

}}

Angenommen, es gibt zwei abstrakte Klassen als A und B. Um abstrakte Methoden von A und B zu implementieren, wird eine neue Klasse C erstellt. Dann sollte Klasse C sowohl A als auch B erweitern. Mehrfachvererbung wird in Java jedoch nicht unterstützt. Daher sollten Schnittstellen verwendet werden. Schnittstellen können zum Deklarieren von Methoden verwendet werden, es ist jedoch nicht möglich, Methoden zu definieren. Es ist nicht möglich, ein Objekt über Schnittstellen zu erstellen. Klasse C sollte alle Methoden in Schnittstelle A und B implementieren.

Schnittstelle A {

void sum ();

}}

Schnittstelle B {

void sub ();

}}

Klasse C implementiert A, B {

public void sum () {

System.out.println ("Summation");

}}

public void sub () {

System.out.println ("Subtraktion");

}}

}}

Jetzt ist es im Hauptprogramm möglich, ein Objekt von C zu erstellen und beide Methoden aufzurufen.

public static void main (String args) {

C obj = neues C ();

obj.sum ();

obj ();

}}

Schnittstellen können also mehrere Vererbungen implementieren.

Eine andere Verwendung von Schnittstellen besteht darin, dass sie Sicherheit bieten. Siehe den folgenden Code.

Schnittstelle A {

void sum ();

}}

Klasse B implementiert A {

public void sum () {

System.out.println ("Summation");

}}

public void multiplizieren () {

System.out.println ("Multiplikation");

}}

}}

Beim Erstellen eines Objekts von B können beide Methoden sum () und multiply () aufgerufen werden. Wenn der Programmierer die Verwendung der Funktion multiply () einschränken möchte, ist dies wie folgt möglich.

public static void main (String args) {

A obj = neues B ();

obj.sum ();

}}

A obj = neues B (); erstellt ein Objekt. Es ist vom Typ A und der Speicher ist als B zugeordnet. Es ist möglich, sum () aufzurufen, aber multiplizieren () nicht auszuführen. Diese Einschränkung erfolgt über Schnittstellen.

Was sind die Ähnlichkeiten zwischen Vererbung und Schnittstelle in Java?

  • Beide Konzepte beziehen sich auf die objektorientierte Programmierung
  • Beide repräsentieren die IS-A-Beziehung.

Was ist der Unterschied zwischen Vererbung und Schnittstelle in Java?

Diff Artikel Mitte vor Tabelle

Vererbung vs Schnittstelle in Java

Vererbung ist ein OOP-Konzept, um neue Klassen aus den vorhandenen Klassen abzuleiten. Die Schnittstelle ist ein Mechanismus in OOP zur Implementierung von Abstraktion und Mehrfachvererbung.
Verwendungszweck
Vererbung bietet Code-Wiederverwendbarkeit. Schnittstellen bieten Abstraktion und Mehrfachvererbung.

Zusammenfassung - Vererbung vs Schnittstelle in Java

Java ist eine Multi-Paradigma-Programmiersprache, die objektorientierte Programmierung unterstützt. Vererbung und Schnittstellen beziehen sich auf die objektorientierte Programmierung. Der Unterschied zwischen Vererbung und Schnittstelle besteht darin, dass durch Vererbung neue Klassen aus vorhandenen Klassen abgeleitet werden und durch Schnittstellen abstrakte Klassen und Mehrfachvererbung implementiert werden.

Laden Sie die PDF-Version von Inheritance vs Interface in Java herunter

Sie können die PDF-Version dieses Artikels herunterladen und gemäß Zitierhinweis für Offline-Zwecke verwenden. Bitte laden Sie die PDF-Version hier herunter. Unterschied zwischen Vererbung und Schnittstelle in Java

Empfohlen: