Klassendiagramm
Ein Klassendiagramm ist ein Strukturdiagramm der UML und stellt die statischen Strukturen eines Systems dar. Es beschreibt Klassen, deren Attribute und Methoden sowie deren Beziehungen zueinander. Klassendiagramme bilden eine zentrale Grundlage für das objektorientierte Design und dienen als Blaupause für die spätere Implementierung.
Zweck und Einsatz
- Modelliert Objektstrukturen in einem Softwaresystem
- Zeigt Klassen mit Attributen und Methoden sowie deren Beziehungen
- Wird in Design- und Analysephase eingesetzt
- Grundlage für Code-Generierung und Datenmodellierung
- Unterstützt die Kommunikation im Entwicklungsteam
Grundelemente
Element | Bedeutung |
---|---|
Klasse | Rechteck mit drei Bereichen: Name, Attribute, Methoden |
Attribut | Eigenschaften der Klasse, z. B. +name: String |
Methode | Operationen der Klasse, z. B. +speichern(): void |
Zugriffsmodifikatoren
Zeichen | Sichtbarkeit |
---|---|
+ | Public |
- | Private |
# | Protected |
~ | Package |
Multiplizitäten
Multiplizität | Beschreibung |
---|---|
0…1 | Keiner oder Einer |
1 | Genau Einer |
0…* oder * | Null oder beliebig viele |
1…* | Beliebig viele – mindestens 1 |
Beziehungstypen
1. Assoziation
Verbindung zwischen zwei Klassen mit Rollen und Multiplizitäten.
Beispiel: Eine Bestellung wird aufgegeben von genau einem Kunden. Ein Kunde kann mehrere Bestellungen tätigen.
2. Aggregation (leere Raute)
„Hat-ein“-Beziehung. Das Teil kann auch ohne das Ganze existieren.
Beispiel: Eine Bestellung besteht aus mehreren Produkten, aber Produkte können auch ohne Bestellung existieren.
3. Komposition (gefüllte Raute)
Starke „besteht-aus“-Beziehung. Das Teil kann ohne das Ganze nicht existieren.
Beispiel: Eine Rechnung besteht aus Positionen, die nur im Kontext dieser Rechnung Sinn ergeben.
4. Vererbung / Generalisierung
Abbildung von gemeinsamen Eigenschaften in einer Oberklasse.
Beispiel:
Privatkunde
undFirmenkunde
erben vonKunde
.