2.6 Lösungen
 
Übung 1 Die links stehende UML-Darstellung der Klasse ist stellt eine Möglichkeit dar. Für eine 'eindeutige' Lösung ist die Aufgabe zu offen spezifiziert. Die Modifizierer '+' und '-' interessieren uns im Moment nicht, können in einer handschriftlichen Lösung also wegfallen.
Übung 2 Zunächst benötigen wir eine Instanz der Klasse Auto, nennen wir sie meinAuto. Eine mögliche Lösung wäre:

meinAuto.setMotorAn(true);
meinAuto.schalten(1);
meinAuto.starten();
meinAuto.schalten(2);
meinAuto.schalten(3);
meinAuto.bremsen();
meinAuto.schalten(2);
meinAuto.bremsen();
meinAuto.stoppen();

Dass man mit einem solchen 'Programm' noch kein Auto steuern kann, ist offensichtlich. Dazu sind wesentlich mehr Methoden und Eigenschaften nötig. Man muss z.B. die Geschwindigkeit abfragen und kontrollieren können.
 

Aufgabe 3 und 4 In die Klasse sind die Modifizierer schon eingebaut. Benutzer der Klasse Mitarbeiter können auf die Attribute name, vorname und gehalt nicht direkt zugreifen. Dies kann man nur über die Methoden. Würde man etwa die Methode
setVorname(String): void
streichen, hätte der Anwender keine Möglichkeit mehr den Vorname zu verändern. Die Regel, dass man auf Daten keine willkürlichen Zugriffsrechte hat, dass man sie also vor ungewolltem Zugriff schützt, nennt man in der Informatik Information Hiding. Das unten stehende Bild veranschaulicht dieses Prinzip.
Die Daten sind im Kern des Objektes nach außen hin versteckt, nur über Methoden, kann man von außen auf diese Daten zugreifen. Der Bauplan, die Klasse also entscheidet selbst, wie man auf die Daten ihrer Objekte zugreifen kann. Geschützt werden die Daten durch den Modifizierer private, in UML durch ein '-' gekennzeichnet.
   
zu 2.7 Ein Turtle-Objekt erzeugen
zur Startseite www.pohlig.de  (C) MPohlig 2005