Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
faecher:informatik:oberstufe:java:objektorientierung:uml:start [06.05.2021 09:52] – sbel | faecher:informatik:oberstufe:java:objektorientierung:uml:start [07.10.2023 09:17] (aktuell) – [Getter/Setter] Marco Kuemmel | ||
---|---|---|---|
Zeile 4: | Zeile 4: | ||
UML ist eine Abkürzung für " | UML ist eine Abkürzung für " | ||
- | Klassen bestehen drei Teilen: | + | Klassen bestehen |
* Klassenname | * Klassenname | ||
Zeile 27: | Zeile 27: | ||
* Die Methoden werden mit ihrer Parameterliste und ihrem Rückgabewert im unteren Feld des UML Diagramms angegeben. Der Datentyp des Rückgabewerts einer Methode steht dabei hinter dem Doppelpunkt. | * Die Methoden werden mit ihrer Parameterliste und ihrem Rückgabewert im unteren Feld des UML Diagramms angegeben. Der Datentyp des Rückgabewerts einer Methode steht dabei hinter dem Doppelpunkt. | ||
- | Neben der Methode " | + | ===== Vorzeichen? ===== |
+ | |||
+ | Den Attributen können verschiedene Zeichen vorangestellt sein: '' | ||
+ | |||
+ | Der Konstruktor wird mit einem '' | ||
+ | |||
+ | Instanz-Variablen werden für gewöhnlich, | ||
+ | |||
+ | Solche " | ||
+ | |||
+ | Attribute und Methoden, denen ein Pluszeichen '' | ||
+ | |||
+ | Darüber hinaus gibt es Attribute und Methoden, die als protected definiert werden können, diese werden im UML Diagramm durch eine vorangestellte Raute ''#'' | ||
+ | |||
+ | ===== Getter/ | ||
+ | |||
+ | |||
+ | Neben der Methode " | ||
< | < | ||
myDog = new Hund(5, | myDog = new Hund(5, | ||
- | myDog->geName() // " | + | myDog.getName() // " |
- | myDog->setName(" | + | myDog.setName(" |
- | myDog->getName() // " | + | myDog.getName() // " |
- | myDog->name // FEHLER | + | myDog.name // FEHLER |
- | myDog->name = " | + | myDog.name = " |
</ | </ | ||
+ | |||
+ | ===== Klassenvariablen ===== | ||
+ | |||
+ | Alle bisherigen Attribute waren Instanzvariablen. Jede Instanz der Hunde-Klasse speichert die Werte ihrer Instanzvariablen | ||
+ | |||
+ | Wenn wir nun beispielsweise die Zahl der erzeugten Hunde-Objekte zählen wollen, haben wir ein Problem: Wir können zwar Flöhe auf jedem Hund zählen, haben aber keinen gemeinsamen Zähler für alle Objekte, den jede Instanz lesen und schreiben kann. | ||
+ | |||
+ | Wir benötigen also eine Integer-Variable, | ||
+ | |||
+ | In eine UML Diagramm werden Klassenvariablen mit Hilfe eines Unterstrichs gekennzeichnet: | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | |||
+ | Los! Lass uns das Klassendiagramm von oben um eine Klassenvariable, |