In C# wird das Schlüsselwort static verwendet, um Klassenmitglieder oder ganze Klassen zu definieren, die zum Typ selbst und nicht zu einer Instanz des Typs gehören. Hier sind einige Richtlinien zur Verwendung statischer Mitglieder oder statischer Klassen:
Dienstprogramme und Hilfsfunktionen: Wenn Sie über eine Reihe von Funktionen verfügen, die nicht vom Status einer Objektinstanz abhängen, wie z. B. mathematische oder Hilfsfunktionen, ist es angebracht, sie statisch zu machen. Dadurch entfällt die Notwendigkeit, eine Instanz der Klasse zu erstellen, um diese Funktionen zu verwenden.
Konstante oder Konfigurationswerte: Statische Felder sind nützlich zum Speichern von Konstanten oder Konfigurationswerten, die allen Instanzen einer Klasse gemeinsam sind.
Instanzanzahl: Ein statisches Feld kann verwendet werden, um die Anzahl der von einer Klasse erstellten Instanzen zu verfolgen.
Singletons: Die Implementierung des Singleton-Entwurfsmusters erfordert möglicherweise statische Mitglieder, um eine einzelne Instanz einer Klasse sicherzustellen.
Erweiterungsmethoden: Erweiterungsmethoden in C# müssen in einer statischen Klasse deklariert werden und auch selbst statisch sein.
Wenn Sie eine Klasse als statisch deklarieren, geben Sie außerdem an, dass die Klasse nicht instanziiert werden kann und dass alle ihre Mitglieder statisch sein müssen. Dies ist nützlich für Utility-Klassen, bei denen eine Instanziierung der Klasse keinen Sinn ergeben würde.
Anwendungsbeispiel:
öffentliche statische Klasse Mathematik {
public static int Add(int a, int b) {
gib a + b zurück;
}
}
// Verwendung: int result = Math.Add(5, 3);
Dieses Beispiel zeigt eine Mathematik-Dienstprogrammklasse, die eine Summenfunktion bereitstellt. Es ist weder notwendig noch möglich, eine Instanz von Mathematicas zu erstellen; Stattdessen wird auf die Methode Add direkt über den Klassennamen zugegriffen.
In C# wird das Schlüsselwort
static
verwendet, um Klassenmitglieder oder ganze Klassen zu definieren, die zum Typ selbst und nicht zu einer Instanz des Typs gehören. Hier sind einige Richtlinien zur Verwendung statischer Mitglieder oder statischer Klassen:Wenn Sie eine Klasse als
statisch
deklarieren, geben Sie außerdem an, dass die Klasse nicht instanziiert werden kann und dass alle ihre Mitglieder statisch sein müssen. Dies ist nützlich für Utility-Klassen, bei denen eine Instanziierung der Klasse keinen Sinn ergeben würde.Anwendungsbeispiel:
Dieses Beispiel zeigt eine Mathematik-Dienstprogrammklasse, die eine Summenfunktion bereitstellt. Es ist weder notwendig noch möglich, eine Instanz von
Mathematicas
zu erstellen; Stattdessen wird auf die MethodeAdd
direkt über den Klassennamen zugegriffen.