Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

UML Klassendiagramm

Empfohlene Antworten

Veröffentlicht

Wann wird das Klassendiagramm eingesetzt?

Was stellen die Verbindungen der Klassen da?

Was bedeuten die + - # vor den Methoden?

Zu 1.:

Zitat: "Klassendiagramme beschreiben die statische Struktur eines objektorientierten Modells, die über einen längeren Zeitraum unverändert bleiben.

Dabei stehen Aufbau und Beziehungen im Vordergrund.

Klassen- und Objektdiagramme repräsentieren eine logische Sicht auf die Zusammenhänge einer Anwendung. Sie enthalten keinerlei Informationen über die Verteilung der modellierten Strukturen auf Software-Komponenten. Auch bleibt die Zuordnung der Software-Komponenten auf die Rechner und Server unbestimmt."

=> eingesetzt relativ früh im Entwicklungsprozess, zur Festlegung der Klassen- und Vererbungsstruktur

Zu 2.:

welche Verbindungslinien meinst Du?

- Vererbungsschritte werden durch Linien dargestellt (gekennzeichnet wird die Vererbung durch ein Dreieck an der Superklasse, also der vererbenden Klasse)

- abgeleitete Objekte werden mit ihrer Klasse über einen gestrichelten Pfeil verbunden (Objekte werden aber nur in Ausnahmefällen in Klassendiagrammen aufgenommen)

- Daneben gibt es noch die Assoziation (einfache Linie zwischen 2 Klassen, beide Klassen sind gleichberechtigt und auch ohne einander lebensfähig, z.B. Bankkunde und Kunde wäre eine klassische Assoziation)

- eine striktere Form der Assoziation ist die Aggregation (Linie zwischen 2 Klassen, an der höher in der Hierarchie stehenden Klasse ist eine nicht ausgefüllte Raute; beide Klassen sind ohne einander lebensfähig, die untergeordnete Klasse ergibt aber ohne die übergeordnete wenig Sinn, z.B. übergeordnete Klasse = LKW, untergeordnete Klasse = Achse)

- die strikteste Form ist die Komposition (Linie zwischen 2 Klassen, an der höher in der Hierarchie stehenden Klasse ist eine ausgefüllte Raute; die untergeordnete Klasse ist ohne die übergeordnete nicht lebensfähig, z.B. übergeordnete Klasse = Gebäude, untergeordnete Klasse = Zimmer => ein Zimmer kann es ohne Gebäude nicht geben)

Zu 3.:

+ = public

- = private

# = protected

~ = package

(beteichnet die Sichbarkeit der Eigenschaften und Methoden)

Nachtrag zu 2.:

Assoziation, Aggregation und Komposition sollten zudem noch bezeichnet werden, d.h., über der Linie wird in Stichpunkten die Art der Beziehung angegeben ( z.B. Assoziation Kund - Konto: über dem Strich schreibt man "hat ein" => Kunde hat ein Konto).

Außerdem sollten die sogenannten Kardinalitäten angegeben werden, kann man sich ähnlich vorstellen wie bei einem Datenbankmodell, an beiden Enden wird jeweils die Anzahl der möglichen Objekte angegeben (z.B. Assoziation Kund - Konto: bei Kunde steht eine 1, bei Konto 1..* => ein Kunde kann 1 bis unendlich Konten haben).

Mögliche Kardinalitäten (Beispiele):

- 1: genau 1 Objekt

- 0..1: kein oder 1 Objekt

- *: kein oder beliebig viele Objekte

- 1..*: 1 bis beliebig viele Objekte

- 5: genau 5 Objekte

- 1, 5, 8: genau 1 oder 5 oder 8 Objekte

- 1..7, 10, 14..*: nicht 0, 8, 9, 11, 12 oder 13 Objekte

- etc.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.