Unterschied zwischen Überladen und Überschreiben in Java

Schlüsseldifferenz - Überladung vs Überschreiben in Java
 

Objektorientierte Programmierung (OOP) ist ein Paradigma der Softwareentwicklung. Es ist eine Methode, um ein Programm mithilfe von Klassen und Objekten zu entwerfen. Eine Klasse ist eine Blaupause. Es beschreibt, was im Objekt enthalten sein soll. Sie definiert die Eigenschaften oder Attribute und die Methoden, aus denen das Objekt bestehen soll. Ein Objekt ist daher eine Instanz einer Klasse. Diese Objekte kommunizieren mit anderen Objekten. Ein Hauptkonzept von OOP ist Polymorphismus. Es ist die Fähigkeit eines Objekts, sich auf verschiedene Weise zu verhalten. Polymorphismus wird in zwei Abschnitte eingeteilt, die überladen und überschreiben. Dieser Artikel beschreibt den Unterschied zwischen diesen beiden in Java. Das Hauptunterschied zwischen Überladen und Überschreiben in Java ist das Überladen ist die Möglichkeit, mehrere gleichnamige Methoden mit unterschiedlichen Implementierungen zu erstellen, und Überschreiben ist das Bereitstellen einer Implementierung für eine Unterklassenmethode, die bereits in der Superklasse vorhanden ist.

INHALT

1. Übersicht und Schlüsseldifferenz
2. Was ist Überladen in Java?
3. Was überschreibt Java?
4. Ähnlichkeiten zwischen Überladen und Überschreiben in Java
5. Side-by-Side-Vergleich - Überladen vs Überschreiben in Java in Tabellenform
6. Zusammenfassung

Was ist Überladen in Java??

Überladen ist die Möglichkeit, mehrere gleichnamige Methoden mit unterschiedlichen Implementierungen zu erstellen. Siehe den folgenden Java-Code.

Abbildung 01: Java-Programm, das das Überladen mit einer unterschiedlichen Anzahl von Argumenten erläutert

Gemäß dem obigen Programm enthält die Klasse A zwei Methoden mit demselben Namen. Die erste Summenmethode hat zwei Parameter. Die zweite Summenmethode hat drei Parameter. Beim Erstellen eines Objekts vom Typ A und der Aufrufsumme (2,3) ruft es die Summenmethode mit zwei Parametern auf, die sum (int a, int b) sind, und gibt 5 zurück. Beim Erstellen eines Objekts vom Typ A und der Aufrufsumme (2 , 3,4), wird die andere Summenmethode mit drei Parametern aufgerufen, die die Summe ist (int a, int b, int c) und 9 zurückgibt.

Der Methodenname ist derselbe, aber die Anzahl der Parameter ist unterschiedlich. Es kann beobachtet werden, dass sich dasselbe Objekt anders verhält. Dieses Konzept wird als Überladung bezeichnet. Es wird auch als bezeichnet Statische Bindung oder Kompiliert den Zeitpolymorphismus.

Es können auch verschiedene Datentypen überladen werden. Siehe den folgenden Java-Code.

Abbildung 02: Java-Programm, das das Überladen mit einer unterschiedlichen Anzahl von Argumenten erläutert

Gemäß dem obigen Programm besteht die Klasse A aus zwei Methoden mit demselben Namen. Die Methode sum (int a, int b) erhält zwei ganzzahlige Werte. Die Summe (double a double b) erhält zwei Doppelwerte. Beim Erstellen des Objekts vom Typ A und der Aufrufsumme (2, 3) ruft es sum (int a, int b) auf und gibt den Wert 5 zurück. Wenn sum (3,4, 5,6) aufgerufen wird, wird sum (doppelt doppelt) aufgerufen b) und geben Sie den Wert 9.0 zurück. In diesem Beispiel haben die Methoden denselben Namen, jedoch einen anderen Variablentyp. Das ist auch überladen.

Was überschreibt Java??

In Java ist es möglich, Unterklassen mit bereits vorhandenen Klassen zu erstellen. Anstatt die neue Klasse von Anfang an zu erstellen, können Sie die Eigenschaften und Methoden der bereits vorhandenen Klasse verwenden. Die vorhandene Klasse ist die Oberklasse und die abgeleitete Klasse ist die Unterklasse. Wenn die Unterklasse eine Implementierung für eine Methode bereitstellt, die sich bereits in der Oberklasse befindet, wird sie als Überschreibung bezeichnet. Siehe das untenstehende Java-Programm.

Abbildung 03: Java-Programm zum Überschreiben

Gemäß dem obigen Programm verfügt die Klasse A über eine Methodenanzeige (). Klasse B erstreckt sich von Klasse A aus, sodass auf die Eigenschaften und Methoden von Klasse A von Klasse B zugegriffen werden kann. Klasse B verfügt über die Methode display () mit einer bestimmten Implementierung. Wenn Sie ein Objekt vom Typ A erstellen und die Anzeigemethode aufrufen, wird die Ausgabe B ausgegeben. Obwohl die Klasse A über eine Anzeigemethode verfügt, wird sie von der Anzeigemethode der Klasse B überschrieben. Die Unterklasse implementiert eine Methode, die in der Oberklasse bereits vorhanden ist.

Dieses Konzept ist eine Art Polymorphismus und wird als Überschreiben bezeichnet. Es wird auch als bezeichnet Late Binding, Dynamische Bindung, Laufzeitpolymorphismus.

Was sind die Gemeinsamkeiten zwischen Überladen und Überschreiben in Java??

  • Beide sind Arten von Polymorphismus.
  • Beim Überladen und Überschreiben haben Methoden denselben Namen.

Was ist der Unterschied zwischen Überladen und Überschreiben in Java??

Überladen gegen Überschreiben in Java

Überladen in Java ist die Möglichkeit, mehrere gleichnamige Methoden mit unterschiedlichen Implementierungen zu erstellen. Durch das Überschreiben in Java wird eine spezifische Implementierung in der Unterklassenmethode für eine in der Superklasse bereits vorhandene Methode bereitgestellt.
 Parameter
Beim Überladen haben die Methoden denselben Namen, jedoch eine andere Anzahl von Parametern oder einen anderen Parametertyp. Beim Überschreiben haben die Methoden denselben Namen und die Parameter müssen gleich sein.
Themes
Überladung tritt innerhalb der Klasse auf. Das Überschreiben tritt innerhalb der zwei Klassen auf, die eine Vererbungsbeziehung haben.
 Synonyme
Überladen wird als kompilierter Zeitpolymorphismus bezeichnet. Überschreiben wird als Laufzeitpolymorphismus bezeichnet.

Zusammenfassung - Überladung vs Überschreiben in Java

Polymorphismus ist ein Hauptkonzept der objektorientierten Programmierung. Es bietet die Möglichkeit, dass sich ein Objekt auf verschiedene Arten verhält. Dies kann entweder überladen oder überschreiben. Überladen ist der Kompilierungszeit-Polymorphismus und das Überschreiben ist der Laufzeit-Polymorphismus. Sie sind nützlich bei der Software-Anwendungsentwicklung. Der Unterschied zwischen Überschreiben und Überladen besteht darin, dass mit Überladen mehrere gleichnamige Methoden mit unterschiedlichen Implementierungen erstellt werden können. Durch Überschreiben wird eine spezifische Implementierung in der Unterklassenmethode für eine bereits in der Superklasse vorhandene Methode bereitgestellt. Es ist möglich, sowohl Überladen als auch Überschreiben in Java zu implementieren.

Laden Sie die PDF-Überladung gegen das Überschreiben in Java herunter

Sie können die PDF-Version dieses Artikels herunterladen und gemäß dem Zitiervermerk für Offline-Zwecke verwenden. Laden Sie die PDF-Version hier herunter. Unterschied zwischen Überladen und Überschreiben in Java

Referenz:

1.Tutorialspoint.com. "Java überschreiben." Die Stelle. Hier verfügbar 
2. "Methodenüberladung in Java - Javatpoint". Hier verfügbar
3. "Überschreiben der Methode in Java - Javatpoint." Hier verfügbar