OOP-Prinzipien: Polymorphismus
Swipe um das Menü anzuzeigen
Polymorphismus
Polymorphismus ist ein weiteres Prinzip der OOP. Du bist bereits auf Polymorphismus gestoßen, als du Methoden überladen und überschrieben hast. Im Wesentlichen ist dies der Kern des Polymorphismus. Aber die Definition von Polymorphismus kann etwas einschüchternd wirken:
In Wirklichkeit ist es jedoch viel einfacher, als es scheint. Polymorphismus lässt sich einfach gesagt in 2 Teile unterteilen:
- Methodenüberladung: Was du in diesem Kapitel gelernt hast, aber lass es uns noch einmal wiederholen.
Betrachten wir ein Beispiel: Wir müssen eine Methode schreiben, die einen int-Parameter entgegennimmt und einen String zurückgibt, sowie eine Methode, die dasselbe mit einem long-Parameter macht. Sieh dir den folgenden Codeausschnitt an:
Main.java
1234567public String doStuff(int parameter) { //... } public String doStuff(long parameter) { //... }
Wie Sie oben sehen können, haben wir zwei Methoden mit demselben Namen erstellt, die jedoch unterschiedliche Aufgaben erfüllen können. Dies wird als Methodenüberladung bezeichnet.
- Methodenüberschreibung:
Mit diesem Thema sind Sie bereits in Berührung gekommen, als Sie die Methode
toStringin diesem Kapitel überschrieben haben. Lassen Sie uns dies noch einmal wiederholen.
Betrachten wir einen Codeausschnitt, der zeigt, wie wir eine Methode überschreiben können. Wir haben eine Klasse namens Airplane, die von der Klasse Transport erbt. In der Klasse Transport gibt es eine Methode namens move, die "This transport has started moving" zurückgibt.
Das Flugzeug soll jedoch "start flying" anstelle von "moving". Um dies zu erreichen, überschreiben wir die Methode move in der Kindklasse:
Transport.java
Airplane.java
1234567public class Transport { // some fields public String move() { return "This transport has started moving"; } }
Wie Sie sehen, haben wir die Methode aus der Elternklasse in der Kindklasse wie erforderlich überschrieben.
Auf diese Weise ergänzt die Polymorphie die Vererbung sehr gut. Durch Polymorphie können wir unseren Code bequem und optimal erweitern und ihn flexibel gestalten.
1. Warum benötigen wir Polymorphie in Java?
2. Wie ergänzt Polymorphie die Vererbung?
3. Welches Schlüsselwort wird verwendet, um eine Methode zu überladen?
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