Metaklasse
Definition (von W. Kowarschick)[1]
Definitionen
Metaklasse
Eine [[Klasse (OOP)|Klasse], deren Extension zu jedem Zeitpunkt ausschließlich Klassen(objekte) enthält, heißt Metaklasse.
Metametaklasse
Eine [[Klasse (OOP)|Klasse], deren Extension zu jedem Zeitpunkt ausschließlich Metaklassen(objekte) enthält, heißt Metametaklasse.
Metametametaklasse
Und so weiter ...
Bemerkungen
Viele objektorientierten Systeme unterstützen keine Metaklassen. In diesen Systemen wird eine [[Klasse (OOP)|Klasse] als ein spezielles Objekt aufgefasst, das direkt, d.h. ohne Zuhilfenahme einer anderen Klasse, definiert werden muss. Dies stellt jedoch keinen Widerspruch zum hier verwendeten Objektbegriff dar (siehe Objekt und dort insb. den Abschnitt „Klassen“).
Andere objektorientierte Systeme unterstützen genau eine Metaklasse, die häufig den Namen Class
hat und deren Extension alle
Klassenobjekte (evtl. sogar Class
selbst) enthält.
Komplexere Metaklassenhierachien oder gar Metametaklassen gibt es dagegen nur sehr selten.