habe folgendes Problem
_public class MyClass{ (Methoden, Variablen etc.) }
public class MyExtendedClass extends MyClass{
public static void main
{
MyClass M = new MyClass();
MyExtendedClass MEC = (MyExtendedClass) M;
}
}_
- ich überlade oder überschreibe keine einzige Methode aus MyClass.
Beim Ausführen kriege ich
Exception in Thread „main“ java.lang.ClassCastException: MyClass
Ich dachte, Typecasting auf abgeleitete Klassen sollte kein Problem sein?
Wie mache ich den Typecast legal?
Gruss,
Michael
Hallo Michael.
public class MyClass{ (Methoden, Variablen etc.) }
public class MyExtendedClass extends MyClass{
public static void main
{
MyClass M = new MyClass();
MyExtendedClass MEC = (MyExtendedClass) M;
}
}
Beim Ausführen kriege ich
Exception in Thread „main“ java.lang.ClassCastException:
MyClass
Wie mache ich den Typecast legal?
So:
public static void main {
MyClass M = new **MyExtendedClass()**;
MyExtendedClass MEC = (MyExtendedClass) M;
}
Du kannst eben aus einem beliebigen Auto keinen Porsche machen:
RICHTIG: Ein Porsche IST-EIN Auto
FALSCH : Ein Auto IST-EIN Porsche
Gruß,
-Andreas.
Hallo Michael.
public static void main {
MyClass M = new MyExtendedClass();
MyExtendedClass MEC = (MyExtendedClass) M;
}
Du kannst eben aus einem beliebigen Auto keinen Porsche
machen:
RICHTIG: Ein Porsche IST-EIN Auto
FALSCH : Ein Auto IST-EIN Porsche
Dankeschön.
Hatte sich meine Logik verquert 
Aber damit ist das Problem erledigt 
Gruss,
Michael