KlassendiaGramm (Klassendiagramme)

| Back to Overview

Klassendiagramm (CD)

(Fast) wie in Progra.

Hier ein Hilfsbild (selber gemacht :D)

Hinweis: Das String[] ist hierbei ein Array und nicht wie unten erläutert eine Assoziation, da es sich um keine eigene Klasse handelt. Bei eigenen Klassen würde ich Assoziationen nutzen.

Wenn in einer Aufgabe ein Klassenname in kursiv steht, ist das auch eine abstrakte Klasse

Und wenn Interfaces von Interfaces "erben", dann nennt man das nicht erben sondern erweitern, und benutzt den durchgehenden Pfeil

Hier noch die Assoziationen zwischen Klassen:

  • Komposition: Die Klasse an der Seite ohne Raute ist abhängig von der Klasse mit Raute, ohne Austauschbarkeit, der Lebenszyklus ist kombiniert

  • Dagegen Aggregation: "Klasse an der Raute" hat ein "Klasse ohne Raute". Ist aber nicht so wichtig, wurde kaum behandelt und wird auch irl nicht so oft verwendet

  • Das Ding oben rechts mit den mehreren Kästchen nennt sich "Qualifizierte Assoziation". Das kleine Kästchen ist dann der Qualifkator mit Attribut der Zielklasse oder mit Typangabe.

Ein Paket ist einfach eine Gruppe von Klassen, die stark miteinander (hohe Kohäsion) assoziiert sind, und möglichst schwach mit anderen Klassen (aus anderen Paketen, schwache Kopplung).

Objektdiagramm (OD)

Das ist im Grunde ein Klassendiagramm nur in konkret: Also der Titel einer Klasse ist nicht mehr "Klasse" sondern "Objektname:Typ" wobei der Typ ungefähr einer Klasse entspricht. Das bedeutet es gibt nur noch konkrete Objekte, haben aber fast die gleichen Assoziationsarten wie in einem CD.