Kü /Info OOP - Turtles SJ 2015/2016 Modul 5: Methoden Kapitel 1: Konstruktoren Videos: o http://perm.ly/oop-turtle-konstruktoren Konstruktoren - Anfangszustände festlegen Mit dem Konstuktor Turtle9() können Turtle-Objekte erzeugt werden. Das ging bisher auch, aber nun kann ich damit einen bestimmten Startzustand festlegen, denn der Konstruktor wird als erstes ausgeführt, gleich wenn das Objekt erzeugt wird. Eigentlich ist ein Konstruktor eine einfache Methode – mit eben dem oben genannten Zweck. Es ist die einzige Methode, deren Name groß geschrieben wird. Konstruktoren haben keinen Rückgabewert, wie z.B. void… // Turtle6.java import ch.aplu.turtle.*; class Turtle6 extends Turtle{ Turtle6 (){ setPos(-50, -50); setLineWidth(5); } public static void main(String[] args){ Turtle6 joe = new Turtle6(); int i = 4; while (i >0) { joe.forward(50); joe.right(90); i = i - 1; } } } Mehrere Turtles verwenden Mit dem Konstuktor Turtle() können mehrere Turtle-Objekte erzeugt werden. Turtle joe = new Turtle() erzeugt ein Turtlefenster mit der Turtle joe. Turtle luka = new Turtle(joe) erzeugt zweite Turtle luka im Fenster der Turtle joe. Im ersten Beispiel zeichnen die Turtles joe und luka Quadrate. Während die eine Turtle ein Quadrat zeichnet, muss die andere warten (sequentielles Zeichnen). // Turtle7.java import ch.aplu.turtle.*; class Turtle7 extends Turtle{ Turtle7 (){ setPos(-50, -50); setLineWidth(5); } Kü /Info public static void main(String[] args){ Turtle7 joe = new Turtle7(); Turtle fritz = new Turtle(joe); int i = 4; while (i >0) { joe.forward(50); joe.right(90); i = i - 1; } i=4; while (i >0) { fritz.forward(50); fritz.right(90); i = i - 1; } } } OOP - Turtles SJ 2015/2016