Möglichkeiten zur Implementierung von Polymorphismus in Java:
1. Methoden von übergeordneten Klassen erben ;
3. Methodenüberladung in derselben Klasse.
Notwendige Bedingungen für die Existenz von Polymorphismus:Es muss eine Vererbung geben;
🎜> 3. Die Referenz der übergeordneten Klasse verweist auf das Objekt der Unterklasse.
Vorteile des Polymorphismus:1. Polymorphismus ist für vorhandenen Code ersetzbar. Polymorphismus funktioniert beispielsweise für die Circle-Klasse, aber auch für jede andere kreisförmige Geometrie, beispielsweise einen Torus.
2. Erweiterbarkeit.
Polymorphismus macht Code erweiterbar. Das Hinzufügen neuer Unterklassen hat keinen Einfluss auf den Polymorphismus, die Vererbung sowie den Betrieb und Betrieb anderer Funktionen vorhandener Klassen. Tatsächlich ist es einfacher, neue Unterklassen hinzuzufügen, um polymorphe Funktionen zu erhalten. Nach der Implementierung der Polymorphismen von Kegeln, Halbkegeln und Halbkugeln ist es beispielsweise einfach, Polymorphismen der Kugelklasse hinzuzufügen.
Polymorphismus wird erreicht, indem die Oberklasse über Methodensignaturen eine gemeinsame Schnittstelle zu Unterklassen bereitstellt, die dann von Unterklassen vervollständigt oder überschrieben werden. Wie in Abbildung 8.3 dargestellt. Die Superklasse Shape in der Abbildung gibt zwei Schnittstellenmethoden an, die Polymorphismus implementieren: ComputeArea() und ComputeVolume(). Unterklassen wie Circle und Sphere verbessern oder überschreiben diese beiden Schnittstellenmethoden, um Polymorphismus zu erreichen.
Es verkörpert flexible und vielfältige Vorgänge in der Anwendung und verbessert die Nutzungseffizienz.
Polymorphismus vereinfacht den Code-Schreib- und Änderungsprozess von Anwendungssoftware. Diese Funktion ist besonders wichtig und wichtig, wenn es um Berechnungen und Operationen an einer großen Anzahl von Objekten geht.
(1) Verwandte Klasse class A ...{
public String show(D obj)...{
return ("A and D");
}
public String show(A obj)...{
return ("A and A");
}
}
class B extends A...{
public String show(B obj)...{
return ("B and B");
}
public String show(A obj)...{
return ("B and A");
}
}
class C extends B...{}
class D extends B...{}
(2) Frage: Was ist das folgende Ausgabeergebnis?
A a1 = new A(); A a2 = new B(); B b = new B(); C c = new C(); D d = new D(); System.out.println(a1.show(b)); ① System.out.println(a1.show(c)); ② System.out.println(a1.show(d)); ③ System.out.println(a2.show(b)); ④ System.out.println(a2.show(c)); ⑤ System.out.println(a2.show(d)); ⑥ System.out.println(b.show(b)); ⑦ System.out.println(b.show(c)); ⑧ System.out.println(b.show(d)); ⑨
(3) Antworten
① A and A ② A and A ③ A and D ④ B and A ⑤ B and A ⑥ A and D ⑦ B and B ⑧ B and B ⑨ A and DEmpfohlenes Tutorial:
Java-Tutorial
Das obige ist der detaillierte Inhalt vonSo implementieren Sie Polymorphismus in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!