Nein. So wie es gegenwärtig steht kann auf die Instanzvariablen der Objekte nicht von außerhalb der Objekte zugegriffen werden, und es gibt keine Zugriffsmethoden, um sie zu ändern.
auftanken()
Methode hinzufügen
Es wäre schön das Programm brauchbarer zu machen (und mehr wie in der realen Welt), indem eine Methode für Auto
geschrieben wird, die wie ein Besuch an der Tankstelle agiert.
Die neue Methode macht folgendes:
void auftanken( int aktuellerTacho, double getankteGalls )
Der Zustand eines Auto
wird sich ändern müssen,
da die Werte, die seine Instanzvariablen enthalten, geändert werden.
Die Anzahl der Gallonen der neuen Tankfüllung wird den alten Wert ersetzen
und die Tachostände müssen angepasst werden.
Hier ist wieder die Auto
Klasse mit ein paar Lücken:
class Auto { // Instanzvariablen int startMeilen; // Tacho Anfangsstand Meilen int endMeilen; // Tacho Endstand Meilen double gallonen; // verbrauchte Gallonen // Konstruktor Auto( int startTacho, int endTacho, double galls ) { startMeilen = startTacho ; endMeilen = endTacho ; gallonen = galls ; } // Instanzmethode double berechneMPG() { return (endMeilen - startMeilen) / gallonen ; } void auftanken(int aktuellerTacho, double getankteGalls ) { = ; = ; = ; } }
Wir füllen für die neue Methode die Lücken aus. Dies könnte ein bisschen Überlegung erfordern.