Die sechs Arten von Klassenbeziehungen

Es gibt sechs Haupttypen von Beziehungen zwischen Klassen: Vererbung , Realisierung / Implementierung , Komposition , Aggregation , Assoziation und Abhängigkeit . Die Pfeile für die sechs Beziehungen lauten wie folgt:

Dann verstehen wir den spezifischen Inhalt des Klassenverhältnisses.

UML class diagram relationships

Sechs Arten von Beziehungen

Bei den sechs Beziehungstypen ist die Codestruktur der drei Beziehungstypen wie Komposition , Aggregation und Assoziation dieselbe wie die Verwendung von Attributen zum Speichern der Referenzen einer anderen Klasse. Daher müssen sie durch die Beziehung zwischen den Inhalten unterschieden werden.

Nachlass

Vererbung wird auch Generalisierung genannt und wird verwendet, um die Beziehung zwischen Eltern- und Kindklassen zu beschreiben. Eine übergeordnete Klasse wird auch als Basisklasse bezeichnet, und eine Unterklasse wird auch als abgeleitete Klasse bezeichnet.
In der Vererbungsbeziehung erbt die Unterklasse alle Funktionen der Elternklasse, und die Elternklasse hat alle Attribute, Methoden und Unterklassen. Unterklassen enthalten zusätzliche Informationen zusätzlich zu den gleichen Informationen wie die übergeordnete Klasse.
Zum Beispiel: Busse, Taxis und Autos sind Autos, sie alle haben Namen und sie können alle auf der Straße sein.

Realisierung / Umsetzung

Implementierung (Implementation) wird hauptsächlich verwendet, um die Beziehung zwischen Schnittstellen und Implementierungsklassen zu spezifizieren .
Eine Schnittstelle (einschließlich einer abstrakten Klasse ) ist eine Sammlung von Methoden. In einer Implementierungsbeziehung implementiert eine Klasse eine Schnittstelle, und Methoden in der Klasse implementieren alle Methoden der Schnittstellendeklaration.

Zum Beispiel: Autos und Schiffe sind Fahrzeuge, und das Fahrzeug ist nur ein abstraktes Konzept eines mobilen Werkzeugs, und das Schiff und das Fahrzeug realisieren die spezifischen mobilen Funktionen.

Kompositionsbeziehung

Zusammensetzung: Die Beziehung zwischen dem Ganzen und dem Teil, aber das Ganze und der Teil können nicht getrennt werden .

Die Kombinationsbeziehung stellt die Beziehung zwischen dem Ganzen und einem Teil der Klasse dar, und das Ganze und der Teil haben eine konsistente Lebensdauer. Sobald das Gesamtobjekt nicht mehr existiert, werden einige der Objekte nicht mehr existieren, und sie werden alle im selben Leben sterben. Zum Beispiel besteht eine Person aus einem Kopf und einem Körper. Die beiden sind unzertrennlich und koexistieren.

Aggregationsbeziehung

Aggregation: Die Beziehung zwischen dem Ganzen und einem Teil und dem Ganzen und einem Teil kann getrennt werden.
Aggregierte Beziehungen stellen auch die Beziehung zwischen dem Ganzen und einem Teil der Klasse dar, Mitgliedsobjekte sind Teil des Gesamtobjekts, aber das Mitgliedsobjekt kann unabhängig vom Gesamtobjekt existieren.

Zum Beispiel sind Busfahrer und Arbeitskleidung und Hüte Teil der Gesamtbeziehung, aber sie können getrennt werden. Arbeitskleidung und Mützen können bei anderen Fahrern getragen werden. Busfahrer können auch andere Arbeitskleidung und Mützen tragen.

Assoziationsbeziehungen _

Assoziation: Gibt an, dass eine Eigenschaft einer Klasse einen Verweis auf eine Instanz (oder Instanzen) einer anderen Klasse enthält .
Assoziation ist die am häufigsten verwendete Beziehung zwischen einer Klasse und einer Klasse, was bedeutet, dass eine Verbindung zwischen einem Objekttyp und einem anderen Objekttyp besteht. Kombinationen und Aggregationen gehören ebenfalls zu assoziativen Beziehungen , aber Beziehungen zwischen Zugehörigkeitsklassen sind schwächer als die beiden anderen.
Es gibt vier Arten von Assoziationen : Zweiwegassoziationen , Einwegassoziationen , Selbstassoziationen und Mehrfachnummernassoziationen .
Zum Beispiel: Autos und Fahrer, ein Auto entspricht einem bestimmten Fahrer und ein Fahrer kann mehrere Autos fahren.
In UML-Diagrammen können bidirektionale Assoziationen zwei Pfeile oder keine Pfeile haben, und unidirektionale Assoziationen oder Selbstassoziationen haben einen Pfeil .
In einer Multiplizitätsbeziehung können Sie der zugehörigen Zeile direkt eine Zahl hinzufügen, um die Anzahl der Objekte in der entsprechenden Klasse anzugeben.
  • 1..1: Nur eine
  • 0..*: Null oder mehr
  • 1..*:ein oder mehr
  • 0..1: Nein oder nur eins
  • m..n: mindestens m, höchstens n (m<=n)

Abhängigkeiten

Abhängigkeit: Nehmen Sie an, dass eine Änderung in Klasse A eine Änderung in Klasse B verursacht, und sagen Sie dann, dass Klasse B von Klasse A abhängt.
In den meisten Fällen spiegeln sich Abhängigkeiten in Methoden einer Klasse wider, die das Objekt einer anderen Klasse als Parameter verwenden .

Eine Abhängigkeitsbeziehung ist eine „Nutzungs“-Beziehung. Eine Änderung an einem bestimmten Ding kann sich auf andere Dinge auswirken, die es verwenden, und eine Abhängigkeit verwenden, wenn angegeben werden muss, dass ein Ding ein anderes verwendet. Beispiel: Das Auto ist auf Benzin angewiesen. Wenn kein Benzin vorhanden ist, kann das Auto nicht fahren.

Klassendiagramm – Ordnungssystem
Das folgende Klassendiagramm modelliert eine Kundenbestellung aus einem Einzelhandelskatalog. Die zentrale Klasse ist der Orden . Damit verbunden sind der Kaufvorgang des Kunden und die Zahlung . Eine Zahlung ist eine von vier Arten: Bargeld , Scheck , Kredit oder Überweisung . Die Bestellung enthält OrderDetails (Einzelposten), jeweils mit dem zugehörigen Artikel .
類圖模板:UML 類圖示例:銷售訂單系統(由 Visual Paradigm Online 的類圖製作者創建)

BEARBEITEN SIE DIESE VORLAGE

Beispiel für ein Klassendiagramm: GUI

Ein Klassendiagramm kann auch Notizen zu Klassen oder Beziehungen haben.

類圖模板:類圖 GUI 示例(由 Visual Paradigm Online 的類圖製作者創建)

BEARBEITEN SIE DIESE VORLAGE

Klassendiagramm mit benutzerdefinierter Einschränkung

類圖模板:類圖 - 類和包約束(由 Visual Paradigm Online 的類圖製作者創建)

BEARBEITEN SIE DIESE VORLAGE

Unter den sechs Arten von Beziehungen ist die Codestruktur von Kombination, Aggregation und Assoziation dieselbe und kann aus der Stärke der Beziehung verstanden werden. Die Reihenfolge von stark nach schwach ist: Vererbung → Implementierung → Zusammensetzung → Aggregation → Assoziation → Abhängigkeit . Das Folgende ist ein vollständiges UML-Diagramm.