Bisher haben wir Klassen lediglich als eine Art Bauplan betrachtet, in dem festlegt ist, welche Attribute und Methoden Objekte der jeweiligen Klasse besitzen.
Darüber hinaus kann eine Klasse jedoch auch selbst Attribute besitzen. Dies ist immer dann sinnvoll, wenn ein Attribut nicht dazu dient ein einzelnes Objekt zu beschreiben, sondern die Gesamtheit aller Objekte der jeweiligen Klasse.
Beispiel
Klassenattribute werden im UML-Klassendiagramm unterstrichen:
Klassenattributs werden in Java mit Hilfe des Schlüsselworts static deklariert:
Der Zugriff auf ein Klassenattribut erfolgt in Java über den Klassennamen: