Methodenüberladung
Swipe um das Menü anzuzeigen
Was ist Methodenüberladung?
Methodenüberladung in Java ermöglicht es, mehrere Methoden mit demselben Namen innerhalb einer Klasse zu definieren, solange jede Methode eine unterschiedliche Parameterliste besitzt. Die Unterschiede können in der Anzahl der Parameter, deren Typen oder beidem liegen. Diese Funktion erlaubt es, flexiblen und gut lesbaren Code zu schreiben, indem verwandte Operationen unter einem gemeinsamen Methodennamen gruppiert werden, während verschiedene Eingabeszenarien behandelt werden.
Main.java
123456789101112131415161718192021package com.example; public class Main { public static void main(String[] args) { print("Hello, world!"); print(42); print("Sum:", 10, 20); } public static void print(String message) { System.out.println("String: " + message); } public static void print(int number) { System.out.println("Int: " + number); } public static void print(String label, int a, int b) { System.out.println(label + " " + (a + b)); } }
Erläuterung:
- Die
print-Methoden unterscheiden sich durch Parametertypen und -anzahl:- Eine Methode nimmt ein einzelnes
String-Argument entgegen; - Eine andere nimmt ein einzelnes
int-Argument entgegen; - Die dritte nimmt ein
String- und zweiint-Argumente entgegen.
- Eine Methode nimmt ein einzelnes
- Java entscheidet, welche Methode aufgerufen wird, basierend auf der Anzahl und den Typen der übergebenen Argumente. Beim Aufruf von
print("Hello, world!")wählt Java die Methode mit einem einzelnenString-Parameter. Fürprint(42)wird die Methode mit einem einzelnenint-Parameter ausgewählt. Beim Aufruf vonprint("Sum:", 10, 20)verwendet Java die Methode mit einemString- und zweiint-Parametern.
Das Beherrschen von Methodenüberladung ermöglicht es, flexibleren und besser lesbaren Code zu schreiben. Durch die Definition mehrerer Versionen einer Methode mit unterschiedlichen Parameterlisten können verschiedene Eingabetypen und Szenarien behandelt werden, ohne den Code mit nicht zusammenhängenden Methodennamen zu überladen. Dies ist besonders nützlich beim Entwerfen von APIs, Hilfsklassen oder mathematischen Operationen, bei denen ähnliche Aktionen auf unterschiedliche Datentypen oder Argumentenzahlen angewendet werden.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen