Informatik Beziehungen Klassen?
Kann mir vielleicht jemand die Beziehung zwischen den zwei klassen links erklären? Rechts ist frageknoten ja einfach eine unterklasse und vererbt die ganzen Attribute und Methoden.
Links versteh ich das aber nicht ganz. Der pfeil sieht anders aus und warum steht da -baum?
Danke
1 Antwort
Es handelt sich um eine einfache Assoziation. Das heißt, ein Dialogsystem hat eine BinaryTree-Instanz. Das Feld, welches auf diese Instanz verweisen soll, ist privat (Sichtbarkeit) und soll baum heißen.
Statt dem Assoziationspfeil könnte man das Feld auch einfach mit in die Box von Dialogsystem schreiben.
----------------------
| Dialogsystem |
----------------------
| - baum: BinaryTree |
----------------------
| etc. ... |
----------------------
Im Grunde sind das die zwei wichtigsten Beziehungstypen: Generalisierung/Vererbung und Assoziation.
Die Vererbung (bzw. in dem Fall die Implementation) zwischen einer abstrakten Schnittstelle und einer Klasse kann noch einmal spezifischer angezeigt werden, indem die Pfeillinie gestrichelt gezeichnet wird. Im Fachjargon wird das als Realisierung oder Implementation bezeichnet.
Bei der Assoziation kann man noch einmal zwischen verschiedenen Formen (Assoziation, Komposition; lies hier) und einem bestimmten Detailgrad unterscheiden. In ihrer Basisform hat die Assoziation keinen Pfeil. Mit Pfeil (direkte Assoziation) gibt sie die Richtung der Beziehung an (Typ A - hat -> Typ B). Zudem kann man die Kardinalität spezifizieren (Bsp.: Ein Kunde kann (keine oder) mehrere Bestellungen haben, eine Bestellung kann nur zu einem Kunden gehören; Kunde 1 -> * Bestellung). Sie kann sogar reflexiv sein (Bsp.: Ein Arbeiter, der sowohl die Rolle eines einfachen Arbeiters, als auch eine Führungsrolle übernehmen kann; Arbeiter * --> * Arbeiter).
Noch eine Sonderform ist die Abhängigkeit (Assoziationspfeil mit gestrichelter Linie), mit der man schwächere Assozationen (Typ A nutzt Typ B) anzeigen kann (Bsp.: Nahrung ----> Mensch).
Wenn du auf eine Assoziation mit Kreuz in der Linie triffst, soll dir das zu verstehen geben, dass ausdrücklich keine Assoziation erwünscht ist.
Was abschließend nicht mit einer klassischen Beziehung verwechselt werden sollte, sind Kommentare (gestrichelte Linie, die an einem Ende zu einer Kommentarbox führt; die Kommentarbox wird in der Regel mit einem Eselsohr gekennzeichnet).
Danke für die Antwort.
Kannst du mir vielleicht noch bitte sagen, was für Beziehungen allgemein in so einem Diagramm vorkommen können?
Wäre sehr hilfreich.