Benutzer-Werkzeuge

Webseiten-Werkzeuge


info10:spielwalze

SPIELWALZE

Ein Spielwalze-Objekt besteht aus einem Rechteck mit einem darin befindlichen farbigen Vollkreis.

Die Klasse könnte man auf zwei Arten implementieren.

1) Als Attribute der Klasse könnte man die Farbe und den Radius des Kreises sowie die Höhe und Breite des Rechtecks einführen. Dann bräuchte man zusätzlich noch die Koordinaten des Kreismittelpunktes sowie den Abstand des Rechtecks von oben und links. Nachteil dieser Implementierung: Codedoppelungen, da wir die gerade genannten Attribute bereits in den Klassen VOLLKREIS und KASTEN implementiert haben.

2) Einfacher ist es ein Spielwalze-Objekt einfach aus einem Kreis und einem Kasten zusammenzubauen. Das heißt: Ein SPIELWALZE-Objekt besteht aus einem KASTEN-Objekt und einem VOLLKREIS-Objekt. Als Attribute der Spielwalze treten dann lediglich zwei Referenzvariablen auf, die auf ein Kastenobjekt und ein Vollkreisobjekt verweisen.

Aufgaben

  1. Erstelle die Klasse SPIELWALZE wie oben in 2) beschrieben.
  2. Implementiere einen ersten Standardkonstruktor ohne Parameter. Weise den Referenzvariablen entsprechende Objekte zu.
  3. Mit einem zweiten Standardkonstruktor soll dafür gesorgt werden, dass ein neues SPIELWALZE-Objekt an beliebiger Stelle positioniert werden kann und eine wählbare Größe besitzt. Der Kreis muss sich dabei immer innerhalb des Rahmen befinden. Auch ein Startwert für die Farbe soll übergeben werden können. Der Konstruktor von SPIELWALZE soll folgende Parameter besitzen: linksStart, obenStart, breite, farbnrStart. Der Parameter breite im Konstruktor bezeichnet dabei die Breite des Rahmens. Hinweis: Verwende zur gedanklichen Unterstützung ein kariertes Blatt und zeichne die Standardgröße des ZEICHENFENSTERS von 600*500 ein.
  4. Implementiere in der Klasse SPIELWALZE die Methode zeichne(), die geeignete Methoden der eingebetteten Objekte aufruft.
  5. Implementiere die Methode faerbeUm(int farbeNeu).
  6. Implementiere die Methode verschieben(int nachRechts, int NachUnten) für Objekte der Klasse SPIELWALZE mit zwei Zeilen Quelltext.

Einfache Objekt-Beziehungen

Das Objektdiagramm besagt, dass ein spielwalze-Objekt zusammengesetzt wird aus einem kasten-Objekt und einem vollkreis-Objekt.

Der Quellcode:

public class SPIELWALZE{
  //Attributliste
  private KASTEN rahmen;
  private VOLLKREIS lampe;
  [...]

besagt: Jedes SPIELWALZE-objekt hat/besitzt (eine Referenz) auf ein KASTEN-objekt und ein VOLLKREIS-objekt. Im Objektkern jedes SPIELWALZE-Objektes befinden sich also ab jetzt zwei Referenzvariablen (rahmen, lampe).

Der Aufruf von new SPIELWALZE() erzeugt ein neues SPIELWALZE-Objekt (und damit auch die beiden Referenzvariablen rahmen, lampe). Da aber bisher noch keine Objekte zu den Referenzen erstellt wurde, müssen zu den Referenzvariablen geeignete Objekte erstellt und diesen zugewiesen werden. Das passiert im Konstruktor von SPIELWALZE mit:

 	rahmen = new KASTEN(...);
	lampe = new VOLLKREIS(...);

rahmen ist jetzt ein Attribut des neuen SPIELWALZE-Objektes. Die Referenz auf das KASTEN-Objekt (lebt auf dem GCH) ist der Attributwert.

info10/spielwalze.txt · Zuletzt geändert: 2023/04/29 11:33 von Ulrich Schneider