Objekt (OOP)
Definition
Objekte sind reale oder abstrakte "Dinge", die sich durch folgende Eigenschaften auszeichnen:
- Ein Objekt existiert für eine gewisse Zeitspanne, d.h., es wird erzeugt und wieder zerstört. Dazu dienen so genannte Konstruktoren und Destruktoren.
- Ein Objekt o hat einen unveränderlichen, systemweit eindeutigen und nicht wiederverwendbaren Objektidentifikator (OID) oid(o).
- Neben dem Objektidentifikator kann ein Objekt noch einen oder mehrere Objektnamen haben. Diese sind im Gegensatz zum OID veränderlich, wiederverwendbar und nicht notwendigerweise systemweit eindeutig, dafür aber "verständlich".
- Ein Objekt o hat zu jedem Zeitpunkt t einen systemweit eindeutigen Zustand state(o,t), welcher die "Eigenschaften" des Objektes zum Zeitpunkt t beschreibt.
- Der Zustand eines Objektes ist gekapselt d.h., er kann ausschließlich mit Hilfe von objektspezifischen Methoden abgefragt und verändert werden, oder er ändert sich selbstständig. Man unterscheidet dementsprechend zwischen Anfragemethoden und Modifikationsmethoden.
- Mit Hilfe von Integritätsbedingungen können Beschränkungen für den Zustand und/oder die Modifikationsmethoden definiert werden, die zu bestimmten Zeitpunkten oder für die gesamte Lebensdauer des Objektes gültig sind.
Anmerkung 1
Der in der Definition verwendete Beriff systemweit ist nicht eindeutig definiert, sondern hängt von der jeweiligen objektorientierten Systemumgabung ab. Bei einem einfachen Programmlauf eines JAVA-Programms bedeutet systemweit beispielsweise "zu jedem Zeitpunkt während des Programmlaufs innerhalb der Laufzeitumgebung". Für ein verteiltes objektorientiertes Datenbanksystem bedeutet systemweit dagegen "über alle Zeit und alle beteiligten Datenbanken hinweg".
Anmerkung 2
Die meisten Objekte speichern ihren Zustand in so genannten Zustandsvariablen. Das sind Variablen, die dem Objekt zugeordnet sind und auf die nur die Methoden des Objektes zugreifen können.
Anmerkung 3
Eine Sammlung mehrerer Methoden und Zustandsvariablen wird in den Autorensystemen normalerweise Skript genannt. Skripte werden manchmal auch -- gerade in Autorensystemen -- als eigenständige Objekte aufgefasst.
