2017-03-23 3 views
-1

2 Klassen, A und B. Klasse B erbt von Klasse A. Was ist falsch mit dem folgenden Code?Java Upcasting Polymorphie Problem

B b3 = (A)(new B()); 

Warum ist es kein legaler Upcasting?

Es macht Sinn. B Lehrer schaffen den B-Teil des gesamten Objekts A dann seinen Teil erstellen und dann wirkt es wie A.

+0

Shoot Ich hatte eine detaillierte Antwort und das war geschlossen, als ich es posten wollte! – ostrichofevil

+0

Nur für das Protokoll: Wenn Sie meine Antwort hilfreich über die DUP-Frage/Antwort hinaus betrachten ... fühlen Sie sich frei, es zu akzeptieren ;-) – GhostCat

Antwort

0

Ganz einfach:

Dies ist nicht legal, weil ein B ein B sein muss, kein A. Das Guss zu A "ungültig" diese Zuordnung.