UML steht für Unified Modeling Language und stellt graphisch den Aufbau und den Zusammenhang der Objektklassen und ihrer Objekte dar.
Wie schon erwähnt, besteht der Ursprung objektorientierter Programmierung meist in der Betrachtung realer Objekte. Diese müssen auf ihre Eigenschaften und Fähigkeiten untersucht werden, um die entsprechende Schablone, die Objektklasse zu definieren; d.h. es müssen Gemeinsamkeiten der einzelnen realen Objekte gefunden werden, die sie zu einem besonderen Typ zusammenfassen und von anderen Objekten abgrenzen. Man führt also eine Abstraktion durch.
Wir betrachten als Beispielobjekt ein Auto.
Ein Auto besitzt sicher sehr viele Eigenschaften, den Benutzer interessieren davon aber meist nur spezielle. Oft spielt die Umgebung in der die Objekte betrachtet werden auch eine Rolle, welche Eigenschaften und Fähigkeiten gerade für wichtig erachtet werden.
Werden Autos in einem Autohaus gehandelt, so mögen Angaben wie Marke, Typ, Farbe, Ausstattung, Preis u.a. die interessanten Eigenschaften sein. Der Fahrer, der sich mit dem Auto fortbewegt mag sich eher für die momentane Geschwindigkeit, ob das Fahrzeug gerade beschleunigt oder bremst, ob die Beleuchtung eingeschaltet ist usw. interessieren.
Es soll hier als Beispiel der zweite Fall betrachtet werden. Damit die Übersicht nicht verloren geht, schränken wir die betrachteten Eigenschaften auf ein Minimum ein.
|
|
|
|
Die Deklaration eines Objektes ähnelt der Varaiblendeklaration:
MeinAuto: TAuto.
Das Objekt besitzt zunächst keine definierten Eigenschaften. Es muss initialisiert werden, wobei es mit den nötigen Attributwerten versorgt wird. Hierzu verfügt die Klasse über eine spezielle Methode, den Constructor, mit dem auch gleich das Objekt dynamisch erzeugt wird. Entsprechend gibt es eine Methode Destructor, die ein Objekt wieder vernichtet.
In obiger Darstellung müssten diese Methoden noch ergänzt werden.
In der UML-Notation werden Objekte ähnlich den Klassen dargestellt, allerdings mit den Attributswerten. Sie stellen damit ein Momentbild eines vorhandenen Zustandes dar.

Da die Objekte einer Klasse alle dieselben Methoden haben, nämlich die in der Klasse definierten, können diese bei der Objektdastellung weggelassen werden:

Die Klassendefinition, kann bereits vorbelegte Werte für Attribute enthalten. Diese müssen dann bei der Erzeugung des Objekts nicht gesondert initialisiert werden. In unserem Beispiel wird davon ausgegangen, dass das Auto bei der Erzeugung die Geschwindigkeit 0 hat, also steht und der Motor aus ist. Das vereinfacht die Initialisierung, da dort nur noch die maximale Leistung und die maximal erreichbare Geschwindigkeit angegeben werden müssen.
[Auto-Beispiel als PASCAL-Programm (Delphi)]
[Geometrie-Beispiel als PASCAL-Programm (Delphi)]
[Index] [Zurück/Objekttyp-Einführung]
Autor: Jürgen Dehmer
Letzte Änderung: 25. März 2001