Unterschied zwischen Überladen und Überschreiben in Java

Hauptunterschied : Überladen bedeutet, zwei Methoden derselben Klasse mit demselben Namen und mit unterschiedlichen Parametertypen zu haben, während Überschreiben bedeutet, dass zwei verschiedene Methoden in derselben Klasse mit denselben Parametertypen, aber unterschiedlichen Implementierungen vorhanden sind.

Die Methoden zum Überschreiben und Überladen sind zwei Konzepte oder Techniken, die in Java-Programmiersprachen verwendet werden. Beide Konzepte ermöglichen es dem Programmierer, verschiedene Implementierungen für Methoden unter demselben Namen bereitzustellen. In diesem Artikel werden die beiden Konzepte der Programmierung unterschieden.

Überladen von Funktionen oder Überladen von Methoden ermöglicht das Erstellen mehrerer Methoden mit demselben Namen in derselben Klasse, die sich jedoch in der Eingabe und im Ausgabetyp der Funktion unterscheiden. Es wird einfach als die Fähigkeit einer Funktion definiert, verschiedene Aufgaben auszuführen.

Beim Überladen haben die Methodenimplementierungen denselben Namen, weil sie ähnliche Aufgaben ausführen. Überladung wird auch als polymorph betrachtet. Die Funktionen mit unterschiedlichen Implementierungen hängen von ihren angegebenen Argumenttypen ab. Es ist normalerweise mit statischen Programmiersprachen verbunden, die die Typüberprüfung in Funktionsaufrufen erzwingen. Es wird auch als praktisch betrachtet, da es dem Programmierer ermöglicht, eine Reihe verschiedener Methoden in derselben Klasse zu schreiben. Beim Überladen ändert der Laufzeitprozessor jedoch den Namen aller überladenen Methoden, was ein Problem darstellen kann.

Das Überschreiben von Methoden in der objektorientierten Programmierung ist eine Funktion, mit der eine Unterklasse oder Unterklasse eine bestimmte Implementierung einer Methode bereitstellen kann, die bereits von einer ihrer übergeordneten Klassen oder übergeordneten Klassen bereitgestellt wird. Die Implementierung in der Unterklasse überschreibt oder ersetzt die Implementierung in der übergeordneten Klasse, indem eine Methode mit demselben Namen, denselben Parametern oder Signatur und demselben Rückgabetyp bereitgestellt wird wie die Methode in der übergeordneten Klasse.

Beim Überschreiben der Methode werden die Funktionen so codiert, dass sie bestimmte Aufgaben in einem Programm ausführen. Das Überschreiben hängt vom Vorhandensein einer Basisklassenfunktion für ihr Aussehen ab. Hier wird die ausgeführte Funktion durch das Objekt bestimmt, mit dem sie aufgerufen wird, dh wenn zum Aufrufen der Methode ein Objekt einer übergeordneten Klasse verwendet wird, wird die Funktion in der übergeordneten Klasse ausgeführt. Das Überschreiben ist von Natur aus polymorph; Es hilft, Programme basierend auf dem ersten impliziten Parameter zu entwerfen, der zur Laufzeit aufgelöst werden kann. Es gibt einige Sprachen in Java, mit denen ein Programmierer verhindern kann, dass eine Methode überschrieben wird.

Vergleich zwischen Überladen und Überschreiben:

Überlastung

Überschreiben

Definition

Das bedeutet, Methoden derselben Klasse unter demselben Namen zu haben, aber jede Methode hat andere Parameter oder dieselben Parameter mit unterschiedlichen Typen und Reihenfolge.

Dies bedeutet, dass eine Unterklasse mit denselben Methoden unter demselben Namen und genau demselben Parametertyp und demselben Rückgabetyp wie eine Oberklasse vorhanden ist.

Bedeutung

Dies bedeutet, dass mehrere Methoden denselben Namen in derselben Klasse verwenden, jedoch eine andere Signatur haben.

Dies bedeutet, dass die Methode der Basisklasse in der abgeleiteten Klasse mit derselben Signatur neu definiert wird.

Verhalten

Es ergänzt oder erweitert das Verhalten der Methoden.

Es ändert das vorhandene Verhalten einer Methode.

Polymorphismus

Es ist ein Kompilierzeitpolymorphismus.

Es ist ein Laufzeitpolymorphismus.

Statische Methode

Die statische Methode kann überladen werden.

Die statische Methode kann nicht überschrieben werden.

Bindung

Statische Bindung

Dynamische Bindung

Erbe

Es kann Erbschaft erfordern oder nicht.

Es erfordert immer Vererbung.

Verband

Es ist normalerweise mit statischen Programmiersprachen verbunden.

Es ist normalerweise mit objektorientierten Programmen verbunden.

Unterschrift

Methoden haben unterschiedliche Signatur.

Methoden müssen dieselbe Signatur haben.

Geschwindigkeit

Es ist schneller als das Überschreiben.

Es ist langsam im Vergleich zur Überladung.

Klassen

Es erfordert nicht mehr als eine Klasse zum Überladen.

Es erfordert mindestens zwei Klassen zum Überladen.

Niveau

Methoden können eine beliebige Zugriffsebene haben.

Methoden haben die gleiche oder breite Zugriffsebene.

Beispiel

Klasse hinzufügen

{

int sum (int a, int b)

{

return a + b;

}

int sum (int a)

{

Rückkehr a + 10;

}

}

Klasse A // Superklasse

{

Anzeige ungültig (int num)

{

print num;

}

}

// Klasse B erbt Klasse A

Klasse B // Unterklasse

{

Anzeige ungültig (int num)

{

print num;

}

}

Empfohlen

In Verbindung Stehende Artikel

  • Unterschied zwischen: Unterschied zwischen fettem und starkem Kaffee

    Unterschied zwischen fettem und starkem Kaffee

    Hauptunterschied: Mutiger und starker Kaffee hängt mit den Brautechniken während der Zubereitung von Kaffee zusammen. Meistens bestimmt die Konzentration von Koffein einen Kaffeesorte und -geschmack. Ein mutiger Kaffee hat einen intensiven, reichen und robusten Geschmack; Ein starker Kaffee hängt jedoch vom Verhältnis von Kaffee und Wasser ab. Ka
  • Unterschied zwischen: Unterschied zwischen Teakholz und Gummiholz

    Unterschied zwischen Teakholz und Gummiholz

    Hauptunterschied: Teakholz ist eine Art Hartholz. Es wird im Wesentlichen aus der Tectona grandis-Baumart gewonnen, die in Süd- und Südostasien heimisch ist, hauptsächlich in Indien, Indonesien, Malaysia, Thailand und Burma. Teakholz hat als Holz eine glatte Maserung und Textur. Es hat einen gelblich-braunen Farbton, der bei Überstunden zu einem silbergrauen Finish reifen kann. Te
  • Unterschied zwischen: Unterschied zwischen AMD und Intel

    Unterschied zwischen AMD und Intel

    Hauptunterschied : AMD und Intel sind zwei verschiedene Unternehmen, die miteinander konkurrieren, um die Halbleiterindustrie zu gewinnen. Der Hauptunterschied zwischen den beiden ist der Preis, während Intel für seine Produkte hohe Preise anbietet. AMD bietet günstige Preise für die Massen. Wer schon einmal einen Computer oder Laptop gekauft hat, hat die Namen AMD und Intel gehört. Bei
  • Unterschied zwischen: Unterschied zwischen Malt Whisky und Grain Whisky

    Unterschied zwischen Malt Whisky und Grain Whisky

    Hauptunterschied : Korn-Whisky und Malt-Whisky sind zwei verschiedene Arten von Scotch-Whisky. Korn Whisky wird aus gemälzter oder nicht gemälzter Gerste in Kombination mit anderen Körnern wie Weizen oder Mais hergestellt. Auf der anderen Seite wird Malt Whisky aus Gerstenmalz hergestellt, das selbst mit Hefe fermentiert wird. M
  • Unterschied zwischen: Unterschied zwischen Nexus 4 und HTC One

    Unterschied zwischen Nexus 4 und HTC One

    Hauptunterschied: Das Nexus 4 ist das vierte Android-Smartphone von Nexus. Es wurde in Zusammenarbeit mit LG Electronics produziert. Das Telefon läuft unter dem Betriebssystem Android 4.2 (Jelly Bean), das mit dem Telefon gestartet wurde. Das HTC One gilt als Nachfolger des HTC One X. HTC One wird im Vergleich zum One X hinsichtlich Hardware- und Softwaredesign voraussichtlich überlegen sein.
  • Unterschied zwischen: Unterschied zwischen Osmose und Dialyse

    Unterschied zwischen Osmose und Dialyse

    Hauptunterschied: Osmose ist eine Art Diffusion, bei der sich Moleküle durch eine semipermeable Membran zu einer stärker konzentrierten Lösung aus einer verdünnten Lösung vermischen. Dialyse ist ein medizinischer Prozess, der die Funktionen einer Niere erfüllt, wenn die Nieren nicht mehr arbeiten können. Es gi
  • Unterschied zwischen: Unterschied zwischen 3GP und 3GPP

    Unterschied zwischen 3GP und 3GPP

    Hauptunterschied: 3GP ist ein Multimedia-Containerformat, das hauptsächlich für 3G UMTS-Multimediadienste dient. Es wurde vom Third Generation Partnership Project (3GPP) entwickelt. 3GPP hingegen ist die Zusammenarbeit zwischen globalen Telekommunikationsverbänden. Es ging darum, eine weltweite Spezifikation für Mobiltelefonsysteme der dritten Generation (3G) auf der Grundlage der GSM-Spezifikationen zu erstellen, wie sie im IMT-2000-Projekt der ITU definiert wurden. 3G
  • Unterschied zwischen: Unterschied zwischen Postleitzahl und PIN-Code

    Unterschied zwischen Postleitzahl und PIN-Code

    Schlüsseldifferenz: Bei Postleitzahlen und PIN-Codes handelt es sich um zwei verschiedene Kodierungssysteme, mit deren Hilfe genau festgelegt werden kann, wohin die Post zugestellt werden soll. In den USA werden Postleitzahlen und in Indien PIN-Codes verwendet. E-Mails und Instant Messaging haben die Art und Weise, wie wir miteinander kommunizieren, verändert und die E-Mails effektiv zum Stillstand gebracht.
  • Unterschied zwischen: Unterschied zwischen Samsung Galaxy Tab 2 7.0 und Nexus 10

    Unterschied zwischen Samsung Galaxy Tab 2 7.0 und Nexus 10

    Hauptunterschied: Das Samsung Tab 2 7.0 ist ein 7-Zoll-Tablet, das ein PLS-TFT-LCD-Display mit einer Dichte von etwa 170 ppi bietet. Das Gerät ist auch in zwei Versionen erhältlich. Nur Wi-Fi und Wi-Fi + 4G. Das Wi-Fi-Only-Tablet wird von einem 1-GHz-Dual-Core-Prozessor mit Strom versorgt und ist mit dem Ice Cream Sandwich für Android v4.0

Tipp Der Redaktion

Unterschied zwischen SSD und HDD

Schlüsseldifferenz: SSD steht für Solid State Drive oder Solid State Disk. Es ist ein Plug-and-Play-Speichergerät, das Halbleiter als Speichermedium verwendet. HDD steht für Hard Disk Drive. Diese Platten verwenden schnell rotierende Magnetplatten, um Daten abzurufen oder aufzuzeichnen. Im Gegensatz zu Festplatten enthalten SSDs keine beweglichen Teile. SS