Objekte und Klassen

Mit Hilfe von Variablen wird der Programmablauf gesteuert und die Eigenschaften von "Objekten", die auf dem Bildschirm ausgegeben werden, festgelegt. Diese Eigenschaften können mit Hilfe von Methoden verändert werden. Im letzten Kapitel wurden auf diese Weise einige Ellipsen auf den Bildschirm gezeichnet:

In einem neuen Fenster starten: Ellipsen malen

Dieses Programm soll jetzt so weiter entwickelt werden, dass ein Kreis während des Programmablaufs geändert werden kann. Zum Beispiel soll seine Position oder seine Größe geändert werden können.

Im ersten Schritt werden die Attribute des Kreises in einem Objekt zusammengefasst. Auf diese Weise ist immer klar, zu wem oder was eine Variable gehört, denn der Name des Objekts wird zusammen mit dem Attribut genannt:

In einem neuen Fenster starten: Kreis malen

Im zweiten Schritt wird dem Objekt "objKreis" auch die Methode hinzugefügt, mit welcher der Kreis gemalt wird. In "draw" lautet die Anweisung, um den Kreis zu zeichnen, nur noch objKreis.malen(); und alle Attribute und Methoden stehen übersichtlich im Block "objKreis".

In einem neuen Fenster starten: Kreis mit nur einer Anweisung malen

Im dritten Schritt soll es möglich sein, nicht nur einen, sondern viele Kreise zu zeichnen, ohne dass für jeden Kreis ein eigener Block geschrieben wird. Dazu wird aus dem Objekt "objKreis" eine Objektschablone "kreisKlasse" gemacht, die man auch eine Klasse nennt. Mit Hilfe des Schlüsselworts "new" kann aus einer Objektschablone ein Objekt erzeugt werden.

In einem neuen Fenster starten: Kreisobjekt aus Kreisobjektschablone erzeugen


Übung 1 - Animierte Kreise

  • Ergänzen Sie das letzte Programm so, dass mindestens 3 verschiedene Kreise gezeichnet werden.
  • Fügen Sie eine Methode verschieben(x, y) in die "kreisKlasse" ein, mit der ein Kreis verschoben werden kann.
  • Ändern Sie das Hauptprogramm so, dass die Kreise automatisch verschoben werden (Animation).

Übung 2 - Objekte und Klassen

  • Denken Sie sich ein kleines Programm aus, wo gleichartige Objekte erzeugt werden.
  • Realisieren Sie das Programm mit einer Objektschablone.