Eine Klasse ist ein UML-Diagrammelement (UML = Unified Modeling Language), das ein Anwendungselement darstellt. Ein Anwendungselement kann durch mehrere Instanzen einer Klasse in einem oder auch mehreren Diagrammen dargestellt werden.
Mit Klassen können Sie konzeptionell verwandte Anwendungselemente in Diagrammen darstellen. Eine Klassendiagrammelement stellt die zugrunde liegende Semantik ganz oder teilweise dar. Es identifiziert die Attribute, Operationen, Beziehungen und die Semantik, die in den Instanzen der Klasse enthalten sind. Jedes Objekt, das eine eine Klasse instanziiert, stellt eigene Attributwerte bereit. Attribute werden auch als Variablen, Mitgliedervariablen, Eigenschaften oder Felder bezeichnet, aber sie werden normalerweise als Variablen implementiert.
Jedes Klassendiagrammelement weist Eigenschaften auf, die seine Darstellung und Position innerhalb eines Diagramms steuern. Durch die Änderung der Eigenschaften eines Diagrammelements wird lediglich die Darstellung des Elements, nicht jedoch die zugrunde liegende Semantik oder ein anderes Diagrammelement geändert, das das betreffende Anwendungselement darstellt.
Wie die folgende Abbildung zeigt, wird eine Klassen in einem Diagramm als Rechteck mit drei Fächern dargestellt.
Sie können die Attribut- und Operationsfächer anzeigen, verdecken oder ausblenden.Sie können zusätzliche Fächer verwenden, um weitere Details anzuzeigen (z. B. Integritätsbedingungen oder Signale, die Instanzen der Klasse empfangen können).
Die Klassen einer Anwendung werden normalerweise in Klassendiagrammen angezeigt. Sie können Klassen oder Instanzen von Klassen (Objekte oder Aufgabenbereiche für Klassifikationsmerkmale) zu Diagrammen hinzufügen, um die folgenden Elemente darzustellen:
Eine E-Commerce-Anwendung kann die Klasse 'Cart' enthalten. Die Klasse definiert ein Attribut 'itemList' und eine Operation 'addItem', die zu allen Objekten vom Typ 'Cart' gehören. Zur Laufzeit werden mehrere Instanzen der Klasse 'Cart' erstellt, die alle von der Klasse definierten Attribute und Operationen aufweisen. Die Instanzen können verschiedene Attributwerte aufweisen, wenn beispielsweise ein Klassenobjekt die Operation 'addItem' aufruft, um seinem Attribut 'itemList' Videofilme hinzuzufügen, während eine andere Instanz die gleiche Operation verwendet, um Bücher hinzuzufügen.