Methodenüberladung in Java [mit Beispielen]

Veröffentlicht: 2020-11-12

Java ist eine vielseitige Sprache, die den Konzepten der objektorientierten Programmierung folgt. Viele Merkmale der objektorientierten Programmierung machen den Code modular, wiederverwendbar, flexibel und leicht zu debuggen. Es gibt viele Merkmale der objektorientierten Programmierung, wie z. B. Vererbung, Polymorphie, Kapselung und Abstraktion.

In diesem Artikel werden wir das Überladen von Methoden in Java diskutieren, was eine Art Polymorphismus ist.

Inhaltsverzeichnis

Polymorphismus

Polymorphismus bedeutet die Fähigkeit, in verschiedenen Formen zu erscheinen. Es ermöglicht derselben Methode, mit unterschiedlichen Methoden unterschiedliche Verhaltensweisen zu zeigen. Es gibt zwei Arten von Polymorphismus: Methodenüberladung und Methodenüberschreibung. Methodenüberladung bedeutet, dass mehrere Methoden den gleichen Namen, aber unterschiedliche Argumente haben.

Erfahren Sie, wie Sie Anwendungen wie Swiggy, Quora, IMDB und mehr erstellen

Methodenüberschreibung bedeutet, dass die untergeordnete Klasse eine Methode mit demselben Namen wie die übergeordnete Klasse, aber mit einer anderen Implementierung haben kann. Wir werden das Überladen von Methoden in diesem Artikel ausführlicher besprechen. Für Method Overriding können Sie upGrad besuchen und Einblicke erhalten.

Methodenüberladung in Java

Das Überladen von Methoden in Java ist eine der nützlichsten Funktionen einer objektorientierten Sprache. Es erlaubt einer Klasse, mehrere Methoden mit demselben Namen zu haben. Der einzige Unterschied, den diese Methoden haben, ist die unterschiedliche Liste von Parametern, die durch diese Methoden übergeben werden.

Anhand eines einfachen Beispiels lässt es sich leicht nachvollziehen. Eine Klassenaddition hat zwei Methoden namens add(), eine Methode hat die Parameter int a und int b, während die andere drei ganzzahlige Parameter hat, dh int a, int b und int c. Daher wird die Methode add() als überladen bezeichnet.

Die auszuführende Methode hängt von der Anzahl der Parameter ab, die in der Methodenaufrufanweisung übergeben werden. Zur Veranschaulichung ruft add(20,30) die Methode add() mit zwei Parametern auf, und add(10,20,30) ruft die Methode add mit drei Parametern auf.

Verschiedene Möglichkeiten, eine Methode zu überladen

Das Überladen von Methoden in Java kann auf verschiedene Arten erreicht werden. Wie wir verstanden haben, ist es die Liste der Parameter, die die beiden Methoden mit demselben Namen in Java unterscheidet. Die verschiedenen Methoden zum Überladen von Methoden in Java können durch Variieren der Parameterliste auf eine der folgenden Arten erreicht werden:

  1. Anzahl Parameter
  2. Der Datentyp von Parametern
  3. Die Reihenfolge der Datentypen von Parametern

Die Anzahl der Parameter

Wie aus dem Namen hervorgeht, gibt es in den überladenen Methoden eine unterschiedliche Anzahl von Parametern, die entscheiden, welche Methode ausgeführt wird, wenn die Methodenaufrufanweisung angezeigt wird. Unten ist das Überladen von Methoden in Java , wobei die Anzahl der Parameter variiert.

Methode1: add(int, int)

Methode2: add(int, int, int)

Die Methodenaufruf-Anweisung add(20,30) führt die Methode1 aus und die Methodenaufruf-Anweisung add(10,20,30) führt die Methode2 aus.

Der Datentyp von Parametern

Bei dieser Art von Methodenüberladung in Java haben die beiden Java-Methoden einer Klasse denselben Namen, und die Anzahl der Parameter kann gleich oder unterschiedlich sein, aber der Datentyp der Parameter ist unterschiedlich.

Methode1: add(int, int)

Methode2: add(int,float)

Methode 3: add(float,float)

Bei den obigen Methoden ist der Methodenname gleich, aber der Datentyp der Parameter ist unterschiedlich. Die Methode, die die Anweisung add(2, 5.5) aufruft, führt also die Methode2 aus. In ähnlicher Weise führt add(7.5, 10.25) die Methode3 aus.

Die Reihenfolge des Datentyps von Parametern

Bei dieser Art der Methodenüberladung in Java ist sowohl der Methodenname als auch die Anzahl der Parameter gleich, der Unterschied liegt jedoch in der Reihenfolge der Datentypen dieser Parameter. Unten ist das Beispiel für überladene Methoden:

Methode1: add(int,float)

Methode2: add(float, int)

Hier ruft der Aufruf der Anweisung add(100, 75.5) die Methode1 zur Ausführung auf, und add(55.25, 150) führt die Methode2 aus.

Daher entscheiden die Parameter in der aufrufenden Anweisung, welche überladene Methode ausgeführt wird.

Lesen Sie: Methodenüberladung in Java

Warum brauchen wir Methodenüberladung in Java?

Wenn der Programmierer eine Methode in Java erstellt hat, um eine Aktion auszuführen, aber später als Teil der Anforderung möchte, dass dieselbe Methode auf verschiedene Parameter einwirkt, kann der Codierer einfach die Funktion zum Überladen von Methoden in Java verwenden . Dadurch kann der Programmierer Methoden zum Ausführen ähnlicher Funktionen mit demselben Namen erstellen, sodass er sich die Namen später nicht merken muss.

Informieren Sie sich über die Vorteile des Methodenüberladens in Java.

Vorteile des Überladens von Methoden in Java

Im Folgenden sind einige der Vorteile des Methodenüberladens in Java aufgeführt :

  • Es verbessert die Lesbarkeit des geschriebenen Codes.
  • Es fügt dem geschriebenen Code Sauberkeit hinzu.
  • Es kann auch für Konstruktoren verwendet werden, sodass wir verschiedene Objekte erstellen können, indem wir verschiedene Daten übergeben.
  • Es gibt den Programmierern die Flexibilität, verschiedene Methoden mit ähnlichen Namen aufzurufen.
  • Überladene Methoden können unterschiedliche Rückgabetypen haben.

Muss gelesen werden: Karriere in Java

Regeln für das Überladen von Methoden in Java

  • Die erste Regel besteht darin, die Methodensignatur zu ändern. Die Methodensignatur bezieht sich auf die Anzahl der Argumente, die Reihenfolge der Parameter und den Datentyp der Parameter.
  • Wenn wir nur den Rückgabetyp der Methode ändern und den Methodennamen und die Argumente unverändert lassen, wird die Methode nicht überladen, sondern es wird zu einem Kompilierungsfehler kommen.

Wichtige Punkte zum Überladen von Methoden in Java

  • Jeder in Java geschriebene Code kann keine Methoden mit demselben Namen haben. Wenn wir in Java zwei Methoden mit demselben Namen erstellen, wird ein Kompilierungsfehler ausgegeben.
  • Dies kann durch Methodenüberladung erreicht werden. Das Überladen von Methoden ermöglicht es Programmierern, zwei oder mehr als zwei Methoden mit demselben Namen, aber unterschiedlichen Parameterlisten zu schreiben.
  • Das Überladen von Methoden in Java ähnelt dem Überladen von Konstruktoren. Der einzige Unterschied besteht darin, dass das Überladen von Methoden für die in der Klasse definierten Methoden erfolgt, während das Überladen von Konstruktoren für die Konstruktormethoden der Klasse gilt.
  • Beim Methodenüberladen in Java haben die überladenen Methoden eine andere Parameterliste. Es hat nichts mit dem Rückgabetyp der Methode zu tun. Als Beispiel; Wenn zwei Methoden denselben Namen und dieselbe Liste von Parametern, aber unterschiedliche Rückgabetypen haben, dann ist dies keine Methodenüberladung in Java , sondern ein ungültiger Fall.

Methode 1 : int Add (float, float)

Methode 2 : float Add (float, float)

Dies ist der ungültige Fall des Überladens von Methoden, da beide Add()-Methoden denselben Namen und dieselbe Liste von Parametern haben.

Unten ist der Code, der das Überladen von Methoden in Java erklärt:

Klassensumme{

private int a;

privates int b;

privates int c;

private int d;

int public add(int a, int b){

int c;

c=a+b;

gib c zurück;

}

int public add(int a, float b){

int c;

c=a+b;

gib c zurück;

}

int public add(float a, float b){

int c;

c=a+b;

gib c zurück;

}

int public add(float a, int b, int c){

int d;

d=a+b+c;

Rückkehr d;

}

}

Public static void main (String[]args)

{

// Objekt der Klasse in der Hauptmethode erstellen

Summe obj1 = neue Summe ();

summe1=obj1.add(10,20);

sum2=obj1.add(10,55.5);

sum3=obj1.add(110.5,25.5);

sum4=obj1.add(10,20,30);

}

Lesen Sie auch: Musterprogramme in Java

Fazit

In diesem Artikel wurde das Methodenüberladen in Java ausführlich besprochen und seine Typen, Regeln und Vorteile erläutert. Anhand von Beispielen wurde das Thema vertieft. Teilen Sie uns in den Kommentaren mit, wenn Sie Zweifel bezüglich des Überladens in Java haben.

Wenn Sie mehr über Java und Full-Stack-Softwareentwicklung erfahren möchten, schauen Sie sich das PG-Diplom in Full-Stack-Softwareentwicklung von upGrad & IIIT-B an, das für Berufstätige konzipiert ist und mehr als 500 Stunden strenge Schulungen und mehr als 9 Projekte bietet und Aufgaben, IIIT-B-Alumni-Status, praktische praktische Schlusssteinprojekte und Arbeitsunterstützung bei Top-Unternehmen.

Landen Sie in Ihrem Traumjob

UPGRAD UND IIIT-BANGALORES PG-DIPLOM IN SOFTWAREENTWICKLUNG
Erfahren Sie mehr