zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

Die berechneMPG() Methode kann die Parameter des Konstruktor nicht verwenden.

Wir können keine Parameter eines Konstruktors in einer Methode verwenden.

Tatsächlich kann die berechneMPG() Methode die Parameter des Konstruktors nicht einmal sehen. Anders gesagt, die Sichtbarkeit der Parameter ist auf den Körper der Methode beschränkt. Der Compiler wird sich beschweren, dass startTacho, endTacho und galls undefinierte Variablen sind, da sie außerhalb ihres Sichtbarkeitsbereichs verwendet werden. Werft einen Blick zurück auf das vollständige Programm, um die korrekte Methode zu sehen.

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 ;
  }

  // Instanzmethoden
  double berechneMPG()
  {
    return  (endTacho - startTacho)/galls  ;       // FALSCH, FALSCH, FALSCH
  }

}

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

FRAGE 18:

Geht uns das Benzin aus?