Typhierarchie: Vererbung, Verschachtelung und Aggregation
FortgeschrittenTyphierarchie: Vererbung, Verschachtelung und Aggregation
Jeder Beziehungstyp kann semantische Flags tragen, die das Verhalten seiner Verbindungen verändern — über das bloße Zeichnen einer Linie hinaus. Wählen Sie einen Beziehungstyp im Modell-Navigator, öffnen Sie das Eigenschaften-Panel und suchen Sie den Abschnitt Typhierarchie. Die Flags sind voneinander unabhängig — aktivieren Sie nur, was Sie benötigen.
Vererbungs-Flags
Verwenden Sie diese, wenn eine Beziehung „ist eine Art von“ bedeutet (z. B. eine is_a-Verbindung von Elektroauto zu Auto). Der Untertyp übernimmt dann Dinge von seinem Obertyp:
- Eigenschaften vererben — der Untertyp erhält die Eigenschaften des Obertyps. Sie erscheinen am Untertyp (ausgegraut/kursiv) und an jeder seiner Instanzen; bearbeitet werden sie am Obertyp.
- Erlaubte Verbindungen vererben — der Untertyp kann überall dort verbinden, wo auch der Obertyp verbinden darf.
- Ansichten vererben — der Untertyp verwendet den visuellen Stil des Obertyps, sofern Sie ihn nicht überschreiben.
Beim Modellieren (in der App und über die API) gilt: Ein Typ darf einen Obertyp haben, und Zyklen werden abgelehnt.
Enthält (Verschachtelung)
Aktivieren Sie Enthält (Verschachtelung), wenn eine Beziehung „ist Teil von / ist enthalten in“ bedeutet (z. B. ein Motor in einem Auto). Verbindungen dieses Typs werden dann als Verschachtelung statt als Linie dargestellt:
- Auf der Zeichenfläche sitzt das enthaltene Element innerhalb seines Containers (Box-in-Box). Der Container wächst passend zu seinem Inhalt, und beim Verschieben des Containers wird alles darin mitbewegt. Die Verbindungslinie wird ausgeblendet — die Verschachtelung ist die Beziehung.
- Im Baum des Modell-Navigators erscheint das enthaltene Element unterhalb seines Containers.
Die Richtung ist wichtig: Ziehen Sie die Verbindung vom enthaltenen Element zu seinem Container (Quelle = das Teil, Ziel = das Ganze).
Aggregation
Aggregation kennzeichnet eine schwächere „Teil von“-Beziehung (geteilte Bestandteile, unabhängiger Lebenszyklus) zu Dokumentationszwecken. Sie hat für sich genommen keine visuelle Wirkung — die Verbindung bleibt eine gewöhnliche Linie. Für eine UML-typische, nicht ausgefüllte Raute stellen Sie in der Formatierung des Beziehungstyps ein Rauten-Ende ein (siehe Beziehungstypen gestalten).
Gut zu wissen
- Alle Flags sind standardmäßig deaktiviert, bestehende Modelle bleiben also unverändert.
- Die Flags sind unabhängig: Eine Beziehung kann verschachteln, ohne zu vererben, oder vererben, ohne zu verschachteln.