Kursinhalt
Java Oop
Java Oop
OOP-Prinzipien: Polymorphismus
Polymorphismus
Polymorphismus ist ein weiteres Prinzip der OOP. Sie sind bereits auf Polymorphismus gestoßen, als Sie Methoden überladen und überschrieben haben. Im Allgemeinen ist dies das Wesen 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 Sie in diesem Kapitel gelernt haben, aber lassen Sie uns das 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. Sehen wir uns den Codeausschnitt an:
Main.java
public 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
toString
in 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" beginnen. Um dies zu erreichen, überschreiben wir die Methode move
in der Kindklasse:
Transport.java
Airplane.java
public class Transport { // some fields public String move() { return "This transport has started moving"; } }
Wie Sie sehen können, 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!