Generalisierung und Spezialisierung
Eine Klasse ist eine Spezialisierung einer anderen Klasse, wenn sie
alle Merkmale der anderen Klasse besitzt und noch einige andere
hinzufügt. Die Beziehung "ist ein" beschreibt das Verhältnis
von Spezialisierung zu Generalisierung.
Beispiel:
Fahrrad "ist ein" Fahrzeug
Kraftfahrzeug "ist ein" Fahrzeug
Auto "ist ein" Kraftfahrzeug
Motorrad "ist ein" Kraftfahrzeug
Fahrzeug
/ \
Kraftfahrzeug Fahrrad
/ \
Motorrad Auto
Eine Spezialisierung wird durch Vererbung realisiert.
Aggregation
Ein Objekt hat mehrere Bestandteile. Die Beziehung ist also ein
"besteht aus".
Ein Auto besteht aus Reifen, Motor, Bremsen und diverser Dinge mehr.
Aber auch die Bestandteile können aus mehreren Teilen bestehen.
Ein Motor aus Kolben und Zündkerzen.
Verwendet
Eine weitere Beziehung zwischen zwei Klassen entsteht, wenn eine
Klasse eine andere Klasse in ihren Parametern verwendet. Es entsteht
eine Abhängigkeit.
Literatur:
Scott Meyers: Effektiv C++ programmieren. Addison Wesley, 1998.
Guido Krüger: GoTo Java 2. 2. Aufl. Addison Wesley, 2000.