Hi,
Ich komme momentan bei einen Projekt nicht weiter:
(Ich darf keine Instanzvariablen benutzen nur Methoden und Rückgabewerte)
Nicht über die dummen Werte und den Sinn wundern, ich hab es nur vereinfacht es geht mir ums Prinzip!
Klasse Auto erbt von Klasse Fahrzeug:
Fahrzeug hat die Methode:
Das ist ein Standartpreis.
Den Preis für alle Fahrzeuge, die keinen eigenen Preis haben, wird in dieser Methode festgelegt.
Die Klasse Auto hat auch die "selbe" methode aber der Preis ist anders.
Das war meine Idee, aber die Methode überschreibt ja nicht die Methode der Superklasse. Also wird immer nur die Methode int preis() von der Superklasse benutzt.
Die Klasse Fahrzeug rechnet dann mit dem Preis.
Ich kann aber keine Parameter bei der Methode benutzen weil ich überall wo mit den Preis gerechnet wird "public int preis(Wert)" schreiben müsste.
Aber da ich keinen Parameter habe, kann ich auch nicht von der Unterklasse "Auto" den Preis mit "super.preis(Wert)" ändern.
Hat jemand Lösungsvorschläge?
-Keine Instanzvariablen
-Der Preis darf nur an einer Stelle vorkommen und soll dort auch geändert werden können.
-Der Preis muss für alle Fahrzeuge, muss in der Klasse "Fahrzeuge" änderbar sein und für die Klasse "Auto" muss ich den Preis in der Klasse "Auto" ändern können.
Wenn ich ein Objekt Auto erstelle muss ich von dort auf die Methode der Superklasse zugreifen können und den Wert dort ändern, überschreiben oder übergehen.
Aber wie gesagt ich kann keine Parameter benutzen, weil sonst der Parameter Preis mehrfach im Code auftauchen würde.
mfg
Ich komme momentan bei einen Projekt nicht weiter:
(Ich darf keine Instanzvariablen benutzen nur Methoden und Rückgabewerte)
Nicht über die dummen Werte und den Sinn wundern, ich hab es nur vereinfacht es geht mir ums Prinzip!
Klasse Auto erbt von Klasse Fahrzeug:
Fahrzeug hat die Methode:
Java:
public int preis()
{
return 1;
}
Das ist ein Standartpreis.
Den Preis für alle Fahrzeuge, die keinen eigenen Preis haben, wird in dieser Methode festgelegt.
Die Klasse Auto hat auch die "selbe" methode aber der Preis ist anders.
Das war meine Idee, aber die Methode überschreibt ja nicht die Methode der Superklasse. Also wird immer nur die Methode int preis() von der Superklasse benutzt.
Java:
public int preis()
{
return 20;
}
Die Klasse Fahrzeug rechnet dann mit dem Preis.
Ich kann aber keine Parameter bei der Methode benutzen weil ich überall wo mit den Preis gerechnet wird "public int preis(Wert)" schreiben müsste.
Aber da ich keinen Parameter habe, kann ich auch nicht von der Unterklasse "Auto" den Preis mit "super.preis(Wert)" ändern.
Hat jemand Lösungsvorschläge?
-Keine Instanzvariablen
-Der Preis darf nur an einer Stelle vorkommen und soll dort auch geändert werden können.
-Der Preis muss für alle Fahrzeuge, muss in der Klasse "Fahrzeuge" änderbar sein und für die Klasse "Auto" muss ich den Preis in der Klasse "Auto" ändern können.
Wenn ich ein Objekt Auto erstelle muss ich von dort auf die Methode der Superklasse zugreifen können und den Wert dort ändern, überschreiben oder übergehen.
Aber wie gesagt ich kann keine Parameter benutzen, weil sonst der Parameter Preis mehrfach im Code auftauchen würde.
mfg