Eine gute Antwort wäre:

Den vollständigen Konstruktor sehen Sie unten.

Vollständiger Konstruktor

import java.io.* ;

class Auto
{
  // Instanzvariablen
  int startMeilen;   // Anfangsmeilenstand
  int endMeilen;     // Endmeilenstand
  double gallonen;   // verbrauchte Gallonen Benzin
  // Konstruktor
  Auto(  int startTacho, int 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. Parameter können nur von den Anweisungen innerhalb des Körpers des Konstruktors "gesehen" werden (die Anweisungen zwischen den geschweiften Klammern). Eine Methode wie berechneMPG() kann die Parameter des Konstruktors nicht sehen.
  2. Daten in Parametern sind temporär. Parameter werden verwendet, um an den Konstruktor Daten zu übermitteln, nicht um Daten bereit 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.         

Inhaltsverzeichnis