zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

Ein Parameter ist ein Datenelement, mit dem eine Methode oder ein Konstruktor versorgt wird.

Ein Programm, das die toString() Methode verwendet

Die Dokumentation zeigt toString() mit keinen Parametern innerhalb der Klammern. Das bedeutet, dass keine Daten an die Methode geliefert werden, wenn wir sie aufrufen. Dennoch, die Klammern müssen sein. Hier ist das Beispielprogramm:

import java.awt.*;
class PointBsp2
{

  public static void main ( String arg[] )
  {
    Point a, b, c;              // Referenzvariablen

    a = new Point();            // ein Point-Objekt erzeugen bei ( 0,  0 );
                                // Referenz in "a" speichern
    b = new Point( 12, 45 );    // ein Point-Objekt erzeugen bei ( 12, 45 );
                                // Referenz in "b" speichern
    c = new Point( b );         // ein Point-Objekt erzeugen,
                                // das die gleichen Daten enthält
                                // wie die, die durch "b" referenziert werden

    String strA = a.toString();// ein String-Objekt erzeugen;
                                // auf der Basis der Daten,
                                // die in dem Objekt gefunden werden,
                                // das von "a" referenziert wird
    System.out.println( strA );
  }
}

Wenn das Programm läuft, erzeugt die Anweisung:

String strA = a.toString(); // ein String-Objekt erzeugen

ein Stringobjekt basierend auf den Daten des Objekts, auf das a verweist. Die Referenzvariable strA behält die Übersicht über dieses neue Stringobjekt. Dann werden die Character des Strings mit println auf dem Bildschirm ausgegeben. Das Programm gibt aus:

java.awt.Point[x=0,y=0]

Das Point-Objekt wurde nicht geändert: es existiert noch und wird durch a referenziert. Seine Methode toString() erzeugte die Character-Zeichen, die ausgegeben wurden, und speicherte sie in dem Stringobjekt. (Natürlich wollt Ihr jetzt unbedingt das Programm in Eure Entwicklungsumgebung kopieren und es starten. Dann werdet Ihr höchstwahrscheinlich das Programm modifizieren und die toString() Methode auf die beiden anderen Objekte anwenden.)

FRAGE 8:

Kurz bevor das Programm endet, wie viele Objekte gibt es und wie viele Objektreferenzen gibt es? Wurde irgendein Ausschuss erzeugt?