zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

Zur Laufzeit gibt das Programm

Eine Mitteilung!

auf dem Bildschirm aus.

Schrittweise Programmausführung

Hier ist wie das Programm im Einzelnen funktioniert:

class HalloObjekt                          // 3a.  Die Klassendefinition wird
{                                          //      verwendet, um ein HalloObjekt
                                           //      zu erstellen.
  String mitteilung;

  HalloObjekt( String str )                // 3b.  Der Konstruktor wird verwendet,
  {                                        //      um die Variable zu initialisieren.
    mitteilung = str;
  }

  void sprich()                            // 4a.  Jedes Objekt hat seine eigene
                                           //      Kopie dieser Methode.
  {
    System.out.println( mitteilung );      // 4b.  Die Methode des Objekts
  }                                        //      verwendet die Daten der
}                                          //      Variablen mitteilung von
                                           //      einObjekt.

class HalloTester
{
  public static void main ( String[] args ) // 1.  main() beginnt zu starten.
  {
    HalloObjekt einObjekt =
       new HalloObjekt("Eine Mitteilung!"); // 2.  Der String "Eine Mitteilung!"
                                            //     wird erstellt.

                                            // 3.  Eine Referenz auf den String
                                            //     wird an den Konstruktor von
                                            //     HalloObjekt übergeben.
                                            //     Ein HalloObjekt wird erstellt.

    einObjekt.sprich();                     // 4.  Die Methode sprich()
                                            //     des Objekts wird ausgelöst.
  }
}

Normalerweise denkt man nicht in solch detaillierter Weise darüber nach, was vor sich geht. Aber wir sollten dazu in der Lage sein, wenn es notwendig ist.

Beachtet, dass ein Stringobjekt mit dem Inhalt "Eine Mitteilung!" erstellt wird, noch bevor der Konstruktor aufgerufen wird. Strings sind Objekte (natürlich), also müssen sie mit einem Konstruktor erstellt werden. Denkt daran, dass Strings etwas Besonderes sind, weil etwas wie "Eine Mitteilung!" ein Objekt erstellt, ohne den new-Operator zu verwenden.

FRAGE 20:

(Fangfrage:) Wie viele Objekte existieren kurz bevor das Programm beendet wird? Klickt hier für einen