Vererbung - Java?

2 Antworten

Schreib mal statt

Auto meinAuto = new Auto();

Porsche meinAuto = new Porsche();

Die Attribute kModell und kModellnr gehören zu Porsche, nicht zum Auto.

Gruß


Enricolo 
Beitragsersteller
 08.03.2022, 18:03

Hat geklappt! Vielen Dank!

0

mach in deiner Auto-Klasse das "extends hauptklasse" weg, das ist totaler schwachsinn. Und die Superklasse Auto weiß nichts von den Kindsklassen, nur andersrum. Also die Methoden gehen nicht, weil sie n ur zum Kind gehören. Aber die Super-Auto-Methode die du da Deklarierst, weiß nichts vom Kind Porsche. Eben nur andersrum, was du mit "extends Auto" bei Porsche gemacht hast. Du müsstest anstatt eine Instanz der Klasse Auto mit new Auto() zu erzeugen, stattdessen eine Porsche-Instanz mit new Porsche() erzeugen. Und Auto kann eigentlich eine abstrakte Klasse sein, da es nicht DAS EINE Auto gibt


Enricolo 
Beitragsersteller
 08.03.2022, 20:23

Ok danke!

0