Objekte

In UML-Modellen sind Objekte Modellelemente, die Instanzen einer Klasse oder mehrerer Klassen darstellen. Sie können Ihrem Modell Objekte hinzufügen, die konkrete und gedachte (prototypische) Instanzen darstellen. Eine konkrete Instanz stellt eine tatsächlich existierende Person oder Sache dar. Beispielsweise stellt eine konkrete Instanz einer Klasse 'Customer' (Kunde) einen tatsächlich vorhandenen Kunden dar. Eine Prototypinstanz einer Klasse 'Customer' enthält Daten, die einen (gedachten) typischen Kunden darstellen.

Eine Klasse repräsentiert eine Abstraktion von einem Konzept oder von einem physischen Gegenstand, während ein Objekt eine konkrete Entität darstellt. Ein Objekt hat eine klar definierte Grenze und ist in der Anwendung von Bedeutung. Objekte haben die in der folgenden Tabelle aufgelisteten Merkmale:

Merkmal Beschreibung
Zustand Der Zustand ist der Zustand, in dem sich ein Objekt befinden kann. Der Zustand eines Objekts wird durch eine Gruppe von Attributen implementiert, die sich normalerweise im Zeitverlauf ändert.
Verhalten Das Verhalten legt fest, wie ein Objekt auf Anfragen von anderen Objekten reagiert. Verhalten wird durch eine Gruppe von Operationen implementiert.
Identität Durch seine Identität wird ein Objekt eindeutig (unverwechselbar). Die eindeutige Identität eines Objekts ermöglicht Ihnen, zwischen mehreren Instanzen einer Klasse zu unterscheiden, wenn jede Instanz denselben Zustand hat.

Jedes Objekt muss einen eindeutigen Namen haben. Ein vollständiger Objektname hat drei Bestandteile: Objektname, Aufgabenbereichsname und Klassenname. Der Name kann aus einer beliebigen Kombination dieser Bestandteile gebildet werden. Die folgende Tabelle zeigt verschiedene Varianten von Objektnamen eines Systems für Onlineeinkauf.

Syntax Beispiel Beschreibung
object/role:class cart100/storage:cart Eine benannte Instanz (cart100) der Klasse 'cart' (Warenkorb) deckt in einer Interaktion den Aufgabenbereich 'storage' (Speicherung) ab
object:class cart100:cart Eine benannte Instanz (cart100) der Klasse 'Cart'
/role:class /storage:cart Eine anonyme Instanz der Klasse 'cart' deckt in einer Interaktion den Aufgabenbereich 'storage' ab
object/role cart/storage Ein Objekt namens 'cart' deckt den Aufgabenbereich 'storage' ab. Dieses Objekt ist entweder ein Objekt, das den Namen der Klasse verdeckt, oder eine Instanz, die keiner Klasse zugeordnet ist.
object cart100 Ein Objekt namens 'cart100'. Dieses Objekt ist entweder eine Instanz, die den Namen der Klasse verdeckt, oder eine Instanz, die keiner Klasse zugeordnet ist.
/role /storage Eine anonyme Instanz deckt den Aufgabenbereich 'storage' ab. Dieses Objekt ist entweder eine Instanz, die die Namen von Objekt und Klasse verdeckt, oder eine Instanz, die weder einem Objekt noch einer Klasse zugeordnet ist.
:class :cart Anonyme Instanz der Klasse 'Customer'.

Objekttypen

Die folgende Tabelle listet die drei Objekttypen auf.

Objekttypen Beschreibung
Aktiv Ein aktives Objekt ist Eigner des Steuerungs-Threads uns es kann Steuerungsaktivitäten einleiten. Prozesse und Tasks sind aktive Objekttypen.
Passiv Ein passives Objekt enthält Daten, aber es leitet keine Steuerungsvorgänge ein.
Mehrfachinstanz Eine Sammlung von Objekten oder mehreren Instanzen derselben Klasse. Mehrfachinstanzen werden häufig verwendet, um zu zeigen, dass eine Gruppe von Objekten mit einer einzigen Nachricht (Stimulus) interagiert.
Zugehörige Tasks
Mit Modellelementen arbeiten
Diagrammelemente zu Modellierungsdiagrammen hinzufügen
Rechtliche Hinweise | Feedback
(C) Copyright IBM Corporation 2004, 2005. All Rights Reserved.