Möchten Sie Hacker von Ihrem Bankkonto fernhalten?

Eine gute Antwort könnte sein:

Ja.

Der Zugriffsmodifizierer private

Wenn ein Klassenmitglied als private deklariert ist, kann es nur von den Methoden dieser Klasse verwendet werden. Hier ist die Klassendefinition für KontoChecker aus dem letzten Kapitel, wobei jetzt jede ihrer Variablen als private deklariert ist.

class KontoChecker
{
  // Daten-Deklaration
  private String kontoNummer;
  private String kontoInhaber;
  private int    kontoStand;

  //Konstruktor
  KontoChecker( String ktoNummer, String ktoInhaber, int start )
  {
    kontoNummer  = ktoNummer ;
    kontoInhaber = ktoInhaber ;
    kontoStand   = start ;
  }

  // Methoden
  int aktuellerKontostand()
  {
    return kontoStand ;
  }

  void  verarbeiteEinzahlung( int betrag )
  {
    kontoStand = kontoStand + betrag ;
  }

  void verarbeiteAuszahlung( int betrag )
  {
    int gebuehr;
    if ( kontoStand < 100000 )
      gebuehr = 15;
    else
      gebuehr = 0;

    kontoStand =  kontoStand - betrag - gebuehr  ;
  }

}

Jetzt können nur die Methoden eines KontoChecker-Objekts die Werte in kontoNummer, kontoInhaber und kontoStand sehen.

FRAGE 2:

Es ist nutzlos ein Bankkonto zu haben, wenn der Kontostand nicht geändert werden kann. Wie kann eine Applikation wie main() den Kontostand eines KontoChecker-Objekts ändern?