Hallo,
Die Aufgabe besteht darin zu erkennen, was zu Laufzeitfehlern und was zu Compilerfehlern führt. Ich muss allerdings erstmal verstehen was genau diese Klammerschreibweise bedeutet bzw. macht.
Was ich glaube zu verstehen: Fahrzeug, Auto und Fahrrad sind eigene Klassen.
Es werden Variablen f,a und rad deklariert aber noch nicht initialisiert.
a wird dann initialisiert, bzw. ein neues Autoobjekt wird erzeugt und a genannt.
Dann soll f = a sein. f ist aber ein Fahzeug, kann also kein Auto sein(?)
Kann man das so sagen, oder kommt es auf die Vererbunghirarchie an?
Ja und dann kommt das mit den Klammern, da weiß ich leider nicht was das bedeutet.
Vielleicht kann da ja jemand Licht ins Dunkle bringen.
Java:
Fahrzeug f;
Auto a;
Fahrrad rad;
a = new Auto();
f = a;
a = (Auto) f;
rad = (Fahrrad) a;
rad = (Fahrrad) f;
Die Aufgabe besteht darin zu erkennen, was zu Laufzeitfehlern und was zu Compilerfehlern führt. Ich muss allerdings erstmal verstehen was genau diese Klammerschreibweise bedeutet bzw. macht.
Was ich glaube zu verstehen: Fahrzeug, Auto und Fahrrad sind eigene Klassen.
Es werden Variablen f,a und rad deklariert aber noch nicht initialisiert.
a wird dann initialisiert, bzw. ein neues Autoobjekt wird erzeugt und a genannt.
Dann soll f = a sein. f ist aber ein Fahzeug, kann also kein Auto sein(?)
Kann man das so sagen, oder kommt es auf die Vererbunghirarchie an?
Ja und dann kommt das mit den Klammern, da weiß ich leider nicht was das bedeutet.
Vielleicht kann da ja jemand Licht ins Dunkle bringen.