Moin hab ein Problem mit dem aufrufen von Objekten und Methoden aus einer Subklasse in deren Superklasse. (Tank & Motorrad)
Hier mal die Problemschnipsel
Einmal die Subklasse Tank:
Und die Superklasse Motorrad
So jedenfalls hab ich jetzt hier das Problem in der Klasse Motorrad, wenn ich eine Methode definieren möchte zum fahren, wie ich die Werte für tankinhalt bekomme und später auch tankvolumen oder evtl auch noch andere.
Genauso wie ich später Methoden aus der Subklasse aufrufen möchte wie z.B. "gib Tankinhalt" etc.
Mit set und get krieg ich es nicht hin, wobei ich sagen muss, dass ich auch noch nicht all zu sehr vertraut bin mit diesen.
Also was muss ich tun? Bin offen für Hilfsansätze und Beispiele...
Hier mal die Problemschnipsel
Einmal die Subklasse Tank:
Java:
public class Tank extends Motorrad
{
private float tankvolumen;
private float tankinhalt;
public Tank(float tankvolumen, float tankinhalt)
{
this.tankinhalt = tankinhalt;
this.tankvolumen = tankvolumen;
if (tankinhalt > tankvolumen)
{
throw new TankLaeuftUeberAusnahme("Tank ist zu klein für diese Menge!");
}
if (tankinhalt < 0)
{
throw new IllegalArgumentException("Negativer Wert nicht möglich!");
}
}
[...]
}
Und die Superklasse Motorrad
Java:
public class Motorrad extends Zweirad
{
public Motorrad(String typ, float kilometerstand, float hoechstGeschwindigkeit)
{
super(typ, kilometerstand, hoechstGeschwindigkeit);
}
public void fahren(int distanz)
{
if (tankinhalt == 0) System.out.println("Tank leer"); //Ist der Tank leer kann man nicht fahren
[...]
}
So jedenfalls hab ich jetzt hier das Problem in der Klasse Motorrad, wenn ich eine Methode definieren möchte zum fahren, wie ich die Werte für tankinhalt bekomme und später auch tankvolumen oder evtl auch noch andere.
Genauso wie ich später Methoden aus der Subklasse aufrufen möchte wie z.B. "gib Tankinhalt" etc.
Mit set und get krieg ich es nicht hin, wobei ich sagen muss, dass ich auch noch nicht all zu sehr vertraut bin mit diesen.
Also was muss ich tun? Bin offen für Hilfsansätze und Beispiele...