Metaklasse

aus Wikipedia, der freien Enzyklopädie

Eine Metaklasse ist in der Objektorientierung die Klasse einer Klasse. Sie definiert Verfahren zum Erzeugen von Instanzen der Klasse, deren Metaklasse sie ist, sowie statische Methoden, also solche, für deren Ausführung keine Objekte benötigt werden.

Nicht alle objektorientierten Programmiersprachen unterstützen das Metaklassenkonzept bzw. manche tun es nur zu einem gewissen Grad.

Sprachen mit Metaklassen

Die folgenden Programmiersprachen unterstützen Metaklassen:

sowie die Beschreibungssprachen:

Echte Metaklassen werden zum Beispiel in der Programmiersprache Smalltalk oder auch Python verwendet. Diese Metaklassen sind ihrerseits Klassen, von denen Unterklassen abgeleitet werden können.

In der Programmiersprache Java gibt es eine Klasse Class, die zwar wichtige Eigenschaften einer Metaklasse hat, sie kann beispielsweise Objekte anderer Klassen erzeugen, jedoch können hiervon keine spezielleren Metaklassen abgeleitet werden.

Weblinks