UML Klassendiagramm: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| (39 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
Ein '''UML-Klassendiagramm''' zeigt den Aufbau von Klassen sowie deren Beziehungen zueinander. | Ein '''UML-Klassendiagramm''' zeigt den Aufbau von Klassen sowie deren Beziehungen zueinander. | ||
Es ist eines der wichtigsten Diagramme der Unified Modeling Language (UML) und wird in der Softwareentwicklung eingesetzt, um Strukturen verständlich darzustellen. | Es ist eines der wichtigsten Diagramme der Unified Modeling Language ([[UML]]) und wird in der Softwareentwicklung eingesetzt, um Strukturen verständlich darzustellen. | ||
Klassendiagramme gehören zu den '''[[UML#Strukturdiagramme|Strukturdiagrammen]]''' der [[UML]]. | |||
== Aufbau einer Klasse == | == Aufbau einer Klasse == | ||
| Zeile 10: | Zeile 12: | ||
Beispiel: | Beispiel: | ||
[[Datei:Aufbau Klasse.png|rahmenlos|upright=2|links|alternativtext=Aufbau_Klasse|Aufbau Klasse]] | |||
<br clear="all" /> | |||
=== Sichtbarkeiten === | === Sichtbarkeiten === | ||
| Zeile 29: | Zeile 31: | ||
=== Vererbung (Generalisierung) === | === Vererbung (Generalisierung) === | ||
Die | Die Unterklassen erben alle Eigenschaften und Methoden von der Basisklasse. | ||
Darstellung: Linie mit '''hohlem Dreieck''' zur Basisklasse. | Darstellung: Linie mit '''hohlem Dreieck''' zur Basisklasse. | ||
Beispiel: | Beispiel: | ||
[[Datei:Vererbung user admin.png|rahmenlos|links|upright=3|alternativtext=Vererbung_user_admin|Vererbung_user_admin]] | |||
<br clear="all" /> | |||
=== Implements (Interface-Implementierung): === | |||
Eine Klasse implementiert ein Interface und verpflichtet sich damit, alle im Interface definierten Methoden bereitzustellen. | |||
Das Interface beschreibt nur den Vertrag, nicht die konkrete Umsetzung. | |||
Darstellung: Linie mit '''hohlem Dreieck''' zur Basisklasse und gestrichelter Linie. | |||
Beispiel: | |||
[[Datei:Interface auth user.png|rahmenlos|links|upright=3|alternativtext=Interface auth user|Interface auth user]] | |||
<br clear="all" /> | |||
=== Assoziation === | === Assoziation === | ||
Allgemeine Beziehung zwischen zwei Klassen. | Allgemeine Beziehung zwischen zwei Klassen. | ||
Beispiel: Ein | |||
Beispiel: Ein User kann mehrere Posts schreiben. | |||
[[Datei:Assoziation user post.png|rahmenlos|links|upright=3|alternativtext=Assoziation User Post|Assoziation User Post]] | |||
<br clear="all" /> | |||
=== Aggregation (schwache Ganzes-Teil-Beziehung) === | === Aggregation (schwache Ganzes-Teil-Beziehung) === | ||
Die Aggregation beschreibt eine '''schwache Ganzes-Teil-Beziehung'''. | Die Aggregation beschreibt eine '''schwache Ganzes-Teil-Beziehung'''. Das Teil kann unabhängig vom Ganzen existieren. | ||
Das Teil kann unabhängig vom Ganzen existieren. | |||
Symbol: '''hohle Raute''' auf der Seite des Ganzen. | Symbol: '''hohle Raute''' auf der Seite des Ganzen. | ||
Beispiel: Eine Gruppe besteht aus Usern. Die User existieren auch ohne die Gruppe. | |||
[[Datei:Aggregation group user.png|rahmenlos|links|upright=3|alternativtext=Aggregation Group User|Aggregation Group User]] | |||
<br clear="all" /> | |||
=== Komposition (starke Ganzes-Teil-Beziehung) === | === Komposition (starke Ganzes-Teil-Beziehung) === | ||
Die Komposition ist eine '''starke Ganzes-Teil-Beziehung'''. | Die Komposition ist eine '''starke Ganzes-Teil-Beziehung'''. Das Teil kann ohne das Ganze nicht weiter existieren. | ||
Das Teil kann ohne das Ganze nicht weiter existieren. | |||
Symbol: '''gefüllte Raute''' auf der Seite des Ganzen. | Symbol: '''gefüllte Raute''' auf der Seite des Ganzen. | ||
Beispiel: Ein Post enthält Kommentare. Ohne den Post existieren die Kommentare nicht. | |||
[[Datei:Komposition post comment.png|rahmenlos|links|upright=3|alternativtext=Komposition post comment|Komposition post comment]] | |||
<br clear="all" /> | |||
== Beispielklassendiagramm == | == Beispielklassendiagramm == | ||
Ein einfaches Beispiel: | Ein einfaches Beispiel: | ||
[[Datei:Klassendiagramm gesamt user.png|rahmenlos|links|upright=3|alternativtext=Klassendiagramm gesamt user|Klassendiagramm gesamt user]] | |||
<br clear="all" /> | |||
== Anwendung == | == Anwendung == | ||
Aktuelle Version vom 27. Januar 2026, 13:15 Uhr
Ein UML-Klassendiagramm zeigt den Aufbau von Klassen sowie deren Beziehungen zueinander. Es ist eines der wichtigsten Diagramme der Unified Modeling Language (UML) und wird in der Softwareentwicklung eingesetzt, um Strukturen verständlich darzustellen.
Klassendiagramme gehören zu den Strukturdiagrammen der UML.
Aufbau einer Klasse
Eine Klasse wird in einem Rechteck dargestellt, das in drei Bereiche aufgeteilt ist:
- Klassenname
- Attribute (Eigenschaften)
- Methoden (Funktionen)
Beispiel:

Sichtbarkeiten
| Symbol | Sichtbarkeit | Erklärung |
|---|---|---|
| - | private | Nur innerhalb der eigenen Klasse sichtbar |
| # | protected | Sichtbar in der eigenen Klasse, im selben Paket und für Unterklassen |
| ~ | package | Sichtbar für alle Klassen im selben Paket (Standard-Sichtbarkeit) |
| + | public | Von überall sichtbar |
Beziehungen im Klassendiagramm
Vererbung (Generalisierung)
Die Unterklassen erben alle Eigenschaften und Methoden von der Basisklasse. Darstellung: Linie mit hohlem Dreieck zur Basisklasse.
Beispiel:

Implements (Interface-Implementierung):
Eine Klasse implementiert ein Interface und verpflichtet sich damit, alle im Interface definierten Methoden bereitzustellen. Das Interface beschreibt nur den Vertrag, nicht die konkrete Umsetzung. Darstellung: Linie mit hohlem Dreieck zur Basisklasse und gestrichelter Linie.
Beispiel:

Assoziation
Allgemeine Beziehung zwischen zwei Klassen.
Beispiel: Ein User kann mehrere Posts schreiben.

Aggregation (schwache Ganzes-Teil-Beziehung)
Die Aggregation beschreibt eine schwache Ganzes-Teil-Beziehung. Das Teil kann unabhängig vom Ganzen existieren.
Symbol: hohle Raute auf der Seite des Ganzen.
Beispiel: Eine Gruppe besteht aus Usern. Die User existieren auch ohne die Gruppe.

Komposition (starke Ganzes-Teil-Beziehung)
Die Komposition ist eine starke Ganzes-Teil-Beziehung. Das Teil kann ohne das Ganze nicht weiter existieren.
Symbol: gefüllte Raute auf der Seite des Ganzen.
Beispiel: Ein Post enthält Kommentare. Ohne den Post existieren die Kommentare nicht.

Beispielklassendiagramm
Ein einfaches Beispiel:

Anwendung
Klassendiagramme werden verwendet für:
- Planung von Softwarearchitektur
- Analyse von Anforderungen
- Dokumentation bestehender Systeme
- Kommunikation im Team
Kurzmerksatz
Ein UML-Klassendiagramm zeigt Klassen, ihre Attribute, Methoden und Beziehungen, inklusive Vererbung, Assoziation und Ganzes-Teil-Beziehungen wie Aggregation und Komposition.
