erstellt 05.09.99; überarbeitet 13.06.00, 07.05.03; übersetzt 20.05.03; © Copyright 2003 Deutsche Übersetzung Heinrich Gailer


Kapitel 31 Programmieraufgaben

Aufgabe 1

Ändern Sie die Car-Klasse des Kapitels, in dem Sie zwei Methoden hinzufügen:

Der Konstruktor und die calculateMPG() Methode bleiben unverändert. Jede von diesen neuen Methoden sollte calculateMPG() verwenden, um die Meilen pro Gallone zu bekommen, und sie nicht selbst berechnen. Eine if-else-Anweisung wählt den korrekten booleschen Rückgabewert aus.

Stellen Sie die Benutzer-Interaktionen zurück in die main() Methode, so dass der Benutzer Werte für jedes Auto eingibt. Die main() Methode verwendet die zusätzlichen Methoden, um an den Anwender eine Meldung auszugeben, ob das Auto ein Benzinschwein- oder ein Sparauto ist.

Sie könnten in Versuchung geraten einen dieser üblichen Designfehler zu begehen:

  1. Meilen pro Gallone in einer Instanzvariablen des Objekts zu speichern, zusammen mit startMiles, endMiles, und gallons.
  2. Die Meilen pro Gallone direkt in den neuen Methoden berechnen.
C:\>java Miles
Geben Sie den Anfangsmeilenstand ein:
10000
Geben Sie den Endmeilenstand ein:
10400
Geben Sie die Gallonen ein:
10

Meilen pro Gallone: 40
Sparauto!
Zurück zur Übersicht.

Aufgabe 2

Ändern Sie den Konstruktor der Car-Klasse, so dass er nur noch einen Parameter für den Meilenanfangsstand hat. Die Meilen pro Gallone können noch nicht berechnet werden. Fügen Sie jetzt der Klasse eine Methode hinzu:

void fillUp( int miles, double gallons )

Dies simuliert eine Tankfüllung an der Tankstelle: miles ist der aktuelle Tachometerstand und gallons ist die Anzahl der Gallonen, die den Tank gefüllt haben. Speichern Sie diese Werte in den Instanzvariablen. Mit dieser Information können die Meilen pro Gallone berechnet werden. Schreiben Sie die Methode, so dass sie jedesmal wenn sie aufgerufen wird, die Instanzvariablen aktualisiert (Simulation eines weiteren Tankvorgangs). Nach jedem Aufruf wird calculateMPG() die letzten Meilen pro Gallone berechnen.

Schreiben Sie ein Testklasse mit einer main() Methode, die einen Car konstruiert und die fillUp() und calculateMPG() Methode ein paar mal aufruft.

C:\>java MilesPerGallon
Neues Car-Objekt Tachometer-Anfangsstand:
00000

Besuch der Tankstelle
Tachometerstand:
00350
Anzahl der Gallonen für die Tankfuellung:
10
Meilen pro Gallone: 35
Sparauto!

Besuch der Tankstelle
Tachometerstand:
00450
Anzahl der Gallonen für die Tankfuellung:
10
Meilen pro Gallone:    10
Benzinschwein!
Zurück zur Übersicht.

Ende der Aufgaben