Eine gute Antwort könnte sein:

Ja. Die Idee der Kapselung ist es, Details eines Objekts vor anderen Bereichen der Software zu verbergen. Einige der Details können Methoden sein.

Private Methoden

class KontoChecker
{
  // Daten-Deklaration
  private String kontoNummer;
  private String kontoInhaber;
  private int    kontoStand;
  private int    zaehler = 0; //zaehlt wie oft das Konto verwendet wird

  private void inkrementZaehler()
  {
    ___________________
  }

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

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

    kontoStand =  kontoStand - betrag - gebuehr  ;
  }
}

Eine private Methode ist eine Methode, die nur von anderen Methoden des Objekts verwendet werden kann. Teile eines Programms außerhalb des Objekts können private Methoden des Objekts nicht direkt aufrufen (verwenden).

Angenommen die Bank möchte aufzeichnen wie oft ein Bankkonto verwendet wird. (Das könnte als Sicherheitsmaßnahme geschehen.) Die "Verwendung" eines Bankkontos ist die Verarbeitung eines Guthabens oder eines Schecks. Um das zu erreichen wird den Daten der KontoChecker-Klasse ein "Zähler" hinzugefügt. (Teile der Klasse wurden vorübergehend ausgelassen.)

Die Methoden verarbeiteEinzahlung() und verarbeiteAuszahlung() rufen inkrementZaehler() auf, um die Variable zaehler jedes Mal dann zu erhöhen, wenn sie verwendet wurde. Wir wollen die Variable zaehler nur aus diesen zwei Gründen ändern, also wird die Methode inkrementZaehler() private deklariert (und die Variable zaehler wird ebenfalls private deklariert.)

FRAGE 8:

Füllen Sie die Lücken aus, so dass die neue private Methode die Variable zaehler inkrementiert.