zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

Kurz bevor das Programm endet,
wie viele Objekte sind erzeugt worden 6 — drei Point-Objekte und drei temporäre Stringobjekte
und wie viele Objektreferenzen gibt es? 3 — jede referenziert (verweist auf) ein Point-Objekt
Wurde irgendein Ausschuss erzeugt? 3 Objekte — jedes ein nicht referenziertes Stringobjekt

Daten eines Point-Objekts ändern

Betrachten wir noch einmal die Beschreibung der Klasse Point. Eine der Methoden ist:

public void move( int x, int y ) ;

Diese Methode wird verwendet, um die x- und y-Werte innerhalb eines Point-Objekts zu ändern. Der Zugriffsmodifizierer public bedeutet, dass die Methode in unserem Programm überall verwendet werden kann; void bedeutet, dass sie keinen Wert zurückgibt. Dieser Teil der Beschreibung

( int x, int y )

besagt, dass wir bei der Verwendung von move zwei int-Parameter übergeben müssen, die die neue Position des Point-Objekts enthalten. Ein Parameter ist eine Information, mit der wir eine Methode versorgen.

Hier ist das Beispielprogramm, noch einmal geändert:

import java.awt.*;
class PointBsp4
{

  public static void main ( String arg[] )
  {
    Point pt = new Point( 12, 45 );      // ein Point-Objekt konstruieren
    System.out.println( "Anfangswerte: " + pt );

    pt.move( -13, 49 );                  // x und y des Point-Objekts ändern
    System.out.println( "Endwerte: " + pt );

  }
}

Hier ist, was es auf den Bildschirm ausgibt:

Anfangswerte: java.awt.Point[x=12,y=45]
Endwerte: java.awt.Point[x=-13,y=49]

FRAGE 12:

Wie viele Point-Objekte wurden durch das Programm erzeugt?
Wie viele temporäre String-Objekte wurden durch das Programm erzeugt?