zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

Nein. Das Programm wird nicht kompilieren.

Neue anzeigen() Methode

Hier ist der Output des Compilers für das fehlerhafte Programm:

compiling: BankkontoTester.java

BankkontoTester.java:55:
No method matching inkrementZaehler() found in class Bankkonto.
    bobsKonto.inkrementZaehler();
                            ^
BankkontoTester.java:56:
Variable zaehler in class Bankkonto not accessible from class BankkontoTester.
    bobsKonto.zaehler = 15;
               ^
2 errors

Die main() Methode kann weder die private Variable zaehler verwenden, noch kann sie die private Methode inkrementZaehler() verwenden. Diese können nur von anderen Methoden des Objekts verwendet werden.

Die main() Methode kann die Methode bobsKonto.verarbeiteAuszahlung( ) verwenden, die nicht privat ist. Diese wiederum kann die private Methode inkrementZaehler() verwenden. Das ist OK.

Es wäre gut eine anzeigen() Methode in dieser Klasse zu haben, die zaehler zeigt, genauso wie die anderen Daten. Hier ist die anzeigen() Methode des vorherigen Kapitels:

class Bankkonto
{
  private String kontonummer;
  private String kontoinhaber;
  private int    kontostand;
  private int    zaehler = 0;
  . . . .

  void anzeigen()
  {
    System.out.println(  kontonummer + "\t" + kontoinhaber + "\t" +  kontostand  );
  }

}

FRAGE 10:

Wir ändern die Methode, so dass sie auch die Variable zaehler ausgibt.