29.2 UML-Notation der
StoppuhrAttribute und Objektmethoden
|
|
UML = Unified Modeling Language | Um ein
objektorientiertes Design (OOD) z.B. einer Stoppuhr sprachenunabhängig zu
entwerfen benutzt man häufig die UML-Notation In UML wird eine Klasse als ein Kasten dargestellt. Der Kasten ist in drei Abteilungen aufgeteilt. In der oberen Abteilung steht der Name der Klasse. In der mittleren Abteilung stehen die Attribute der Klasse StoppUhr, ihre Werte beschreiben den Zustand einer StoppUhr. In der Regel will man, dass diese Werte geschützt (engl. protected) sind. In UML drücken wir dies durch das Gatter-Zeichen (#) vor den Attributsnamen. Hinter dem Doppelpunkt, der den Attributsnamen folgt, steht der Datentyp des Attributes. In der unteren Abteilung stehen die Methoden. mit denen man den Zustand, also die Werte der Attribute einer Stoppuhr verändern kann. Das Pluszeichen vor den Methodennamen sagen, die Methoden sind öffentlich zugänglich (public). Attribute und Methoden schreibt man i.a. klein, wobei man wegen der leichteren Lesbarkeit Großbuchstaben einstreuen kann. Methodennamen und Attribute sind leicht zu unterscheiden, denn Methodennamen werden immer mit runden Klammernpaar abgeschlossen. Diese runden Klammern können, wie unser Beispiel zeigt leer sein, müssen aber nicht. Dies kennen wir schon aus vielen Beispielen. Während die Methoden starten() und stoppen() lediglich Aktionen auslösen, sollen getLaufzeit() bzw istAktiv() einen Wert liefern, nämlich die gestoppte Zeit bzw. den Zustand der Uhr. Dass diese Methoden an den Aufrufer Werte zurückgeben sollen, erkennen wir an der Angabe des Rückegabetyps. Es ist der Typ des Wertes, den die Methode liefern soll. Wir erkennen, die Notation ist ist der von Java sehr ähnlich. Die Methoden müssen nun noch genauer spezifiziert werden:
stoppen() getLaufzeit():
long istAktiv():
boolean Implementieren Sie die Klasse StoppUhr in Java. Folgendes ist dabei zu beachten: Die
Methodenköpfe haben folgende Gestalt:
public void stoppen() {
public long getLaufzeit() {
public boolean istAktiv() { Die beiden Methoden starten() und stoppen() liefern keinen Rückgabewert, da aber in Java Methoden immer einen Rückgabewert haben, drückt man dies durch die Rückgabe von void aus. |
zu | 29.3 Die Klasse StoppUhr in Java |
zur Lösung | www.pohlig.de (C) MPohlig 2006 |