Beispiel:
Die Klasse "Drucker" erbt von der Klasse "Gerät":
- Attribut "Farbe"
- Methode "anmalen"
- Attribut "Ort"
- Methode "aus dem Fenster werfen"
Eine Konsequenz der Vererbung ist, daß ein Objekt nun in
verschiedenen Rollen auftreten kann (Polymorphismus),
nämlich als Instanz seiner eigenen Klasse oder als Instanz einer
Oberklasse; das kann je nach Art der
Verwendung zu Überraschungen führen.
Wir haben das Problem hier nicht und ignorieren es daher bis auf weiteres; Vererbung spielt in dieser Vorlesung keine Rolle.
In manchen "objektorientierten Sprachen" faßt man Klassen daher auch als Objekte auf, die Instanzen einer Klasse "class" sind. Wir verwenden dies hier nicht.
Bemerkung: Oft wird Objektorientierung so erklärt,
daß Objekte aktive Einheiten sind, welche miteinander
über Nachrichten kommunizieren
und daraufhin selbst ihre Methoden ausführen.
Wir schätzen das nicht;
das ist zwar eine von mehreren möglichen Realisierungen,
aber meistens geht es anders viel einfacher;
es wird daher intern auch meist anders gemacht.
Nur wenn die Objekte räumlich verteilt angeordnet sind,
kommt man um die Nachrichten nicht herum.