zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

Den vollständigen Konstruktor sehen Sie unten.

Vollständiger Konstruktor

import java.util.Scanner;

class Auto
{
  // Instanzvariablen
  double startMeilen;   // Anfangsstand Tachometer
  double endMeilen;     // Endstand Tachometer
  double gallonen;      // verbrauchte Gallonen Benzin
  // Konstruktor
  Auto(  double startTacho, double endTacho, double galls  )
  {
    startMeilen = startTacho;
    endMeilen   = endTacho;
    gallonen    = galls;
  }

  // Methoden
  double berechneMPG()
  {
    return  ;
  }

}

class MeilenProGallone
{
  public static void main( String[] args )
  {
    Auto auto = new Auto( 32456, 32810, 10.6 );
    System.out.println( "Meilen pro Gallonen: "
        + auto.berechneMPG() );
  }
}

Konstruktoren können kompliziert werden; aber für die meisten Programme müssen Sie nichts anderes tun, als die Werte der Parameter in die Instanzvariablen zu kopieren. Sie mögen sich fragen, warum Sie das tun sollen. Warum nicht einfach die Daten in den Parametern lassen? Dafür gibt es zwei Gründe:

  1. Die Parameter eines Konstruktors können nur von seinen eigenen Anweisungen gesehen werden. Eine Methode wie berechneMPG() kann die Parameter des Konstruktors nicht sehen.
  2. Daten in Parametern sind temporär. Parameter werden verwendet, um Daten zu übermitteln, aber nicht um Daten zu halten.

Stellen Sie sich einen Parameter als einen Papierfetzen mit Informationen vor, der an den Konstruktor übergeben wird. Der Konstruktor muss die Informationen an irgendeine dauerhafte Stelle kopieren, wo sie von den anderen Methoden gesehen werden können.

FRAGE 10:

Vervollständigen Sie jetzt die berechneMPG() Methode.