Informatik-Unterricht

Home | Dokumentation | Themen | Impressum

Objektorientierte Programmierung mit Java und BlueJ

Aufgaben

Aufgabe 1

Es soll eine Verkehrssimulation entworfen werden.
Im Rahmen der Vorüberlegungen taucht dabei der Begriff Auto auf.
Handelt es sich dabei um eine Klasse oder ein Objekt?



Aufgabe 2

Erkläre anhand des unten stehenden Bildes (Planeten)
die objektorientierten Begriffe Objekt, Klasse, Attribut und Methode.
 



Aufgabe 3

Es soll ein Grafikprogramm entworfen werden.
Damit soll es möglich sein, einfache geometrische Figuren zu zeichnen.
Diese haben zunächst eine Position, können aber sowohl vertikal als auch horizontal bewegt werden.
Entwirf für dieses Szenario ein Klassendiagramm.
Mach Dir zunächst klar, welche Klassen benötigt werden und welche Attribute und Methoden diese Klassen haben.



Aufgabe 4

Starte BlueJ und öffne das Projekt Figuren / shapes.
  1. Erzeuge einige Objekte, z.B. einen Kreis (circle) und ein Quadrat (square).
  2. Mache die Objekte auf der Leinwand sichtbar (Methode makeVisible()).
  3. Bewege die Objekte an andere Positionen, z.B. den Kreis nach rechts (Methode moveRight()) und das Quadrat nach oben (Methode moveUp())..
  4. Ändere die Größe der Objekte (Methode changeSize()), mache z.B. das Quadrat größer und den Kreis kleiner.
  5. Ändere die Farbe der Objekte (Methode changeColor()), z.B. den Kreis schwarz und das Quadrat grün.
  6. Bewege die Objekte an andere Positionen - benutze dieses Mal die Methoden moveHorizontal() oder moveVertical().
  7. Erzeuge ein Bild mit einer Sonne und einem Haus (ähnlich der Abbildung rechts).



Aufgabe 5

Arbeite weiter/wieder mit dem Projekt shapes.
Die Aufgabe nun besteht darin, eine neue Klasse Rechteck zu erstellen,
die alle Methoden beinhaltet, die auch die anderen Klassen in diesem Projekt beinhalten.

Du kannst beispielsweise folgendermaßen vorgehen:
  1. Erzeuge eine neue Klasse Rechteck (new class).
  2. Kopiere den gesamten Quelltext aus der Klasse Quadrat und ersetze damit den Inhalt von Rechteck.
  3. Ersetze sämtliche Vorkommen des Begriffs Quadrat mit dem Begriff Rechteck.
  4. Überlege nun, was den Unterschied zwischen einem Quadrat und einem Rechteck ausmacht. Ändere die entsprechenden Stellen im Quellcode. Tipp 1   Tipp 2
  5. Teste deine neue Klasse, indem Du ein entsprechendes Objekt erzeugst und es sichtbar machst.



Aufgabe 6

Arbeite weiter/wieder mit dem Projekt shapes.
Die Aufgabe nun besteht darin, eine neue Klasse HausMitSonne zu erstellen,
die das Bild aus Aufgabe 4 direkt zeigt.

Du kannst beispielsweise folgendermaßen vorgehen:
  1. Erzeuge eine neue Klasse HausMitSonne.
  2. Füge die benötigten Attribute hinzu (das entspricht den Bestandteilen des Bildes). Tipp 3
  3. Füge in die Methode draw() die entsprechenden Befehle, sodass die Bestandteile des Bildes erzeugt und entsprechend dem Bild verändert werden. Tipp 4
  4. Teste deine neue Klasse, indem Du ein entsprechendes Objekt erzeugst und es sichtbar machst.



Aufgabe 7

Erkläre an einem Beispiel, was man in der Informatik unter einem Parameter,
einem Datentypen und Rückgabewerten versteht und welcher Zusammenhang dazwischen besteht.



Aufgabe 8

Erkläre auch an einem Beispiel, was man in der Informatik unter einem Konstruktor versteht.



Aufgabe 9

Erkläre den Unterschied zwischen einer sondierenden und einer verändernden Methode
und gib jeweils ein Beispiel aus dem Projekt shapes dafür an.



Aufgabe 10

Arbeite weiter/wieder mit dem Projekt shapes.
Erzeuge zunächst einige Objekte, z.B. einen Kreis und ein Dreieck. Untersuche nun deren Attribute.