zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

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

Sie 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. Werfen Sie einen Blick zurück auf das 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 ;
  }

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

}

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

FRAGE 18:

Geht Ihnen das Benzin aus?