static-Modifizierer
Aktualisiert: November 2007
Deklariert, dass ein Klassenmember zu einer Klasse, nicht zu einer Instanz der Klasse gehört.
static statement
Argumente
- statement
Erforderlich. Die Definition eines Klassenmembers.
Hinweise
Der static-Modifizierer gibt an, dass ein Member nicht zu den Instanzen der Klasse, sondern zur Klasse selbst gehört. In einer gegebenen Anwendung ist nur ein Exemplar eines static-Members vorhanden, auch wenn viele Instanzen der Klasse erstellt werden. Auf static-Member kann nur mit einem Verweis auf die Klasse zugegriffen werden und nicht mit einem Verweis auf eine ihrer Instanzen. Allerdings ist in der Deklaration von Klassenmembern der Zugriff auf static-Member über das this-Objekt möglich.
Mit dem static-Modifizierer können Member von Klassen gekennzeichnet werden. Klassen, Schnittstellen und Member von Schnittstellen können nicht mit dem static-Modifizierer gekennzeichnet werden.
Der static-Modifizierer darf weder mit einem Vererbungsmodifizierer (abstract und final) noch mit einem Versionssicherheitsmodifizierer (hide und override) kombiniert werden.
Verwechseln Sie den static-Modifizierer nicht mit der static-Anweisung. Der static-Modifizierer weist auf einen Member hin, der direkt zur Klasse selbst gehört, aber nicht zu einer Instanz der Klasse.
Beispiel
Das folgende Beispiel veranschaulicht die Verwendung des static-Modifizierers.
class CTest {
var nonstaticX : int; // A non-static field belonging to a class instance.
static var staticX : int; // A static field belonging to the class.
}
// Initialize staticX. An instance of test is not needed.
CTest.staticX = 42;
// Create an instance of test class.
var a : CTest = new CTest;
a.nonstaticX = 5;
// The static field is not directly accessible from the class instance.
print(a.nonstaticX);
print(CTest.staticX);
Ausgabe dieses Programms:
5
42
Anforderungen
Siehe auch
Konzepte
Gültigkeitsbereich von Variablen und Konstanten