Heim >Backend-Entwicklung >C++ >Können Erweiterungsmethoden zu statischen Klassen in C#hinzugefügt werden?
Kann die Erweiterungsmethode zur statischen Klasse in der statischen Klasse?
Die Erweiterungsmethode in c# ist eine leistungsstarke Funktion, mit der eine neue Methode zum vorhandenen Typ hinzugefügt wird, ohne den Quellcode ändern zu müssen. Die Frage ist jedoch, ob es eine solche statische Klasse wie erweitern kann.
Versuchen Sie, die lokale statische Methode des Parameters "This" zu verwenden, um Console
zu erweitern und eine
Console
Der Grund für diesen Versagen ist die inhärenten Eigenschaften der Expansionsmethode. Sie benötigen Instanzvariablen (Werte) von Objekten, um eine Rolle zu spielen. Andererseits zeigen statische Klassen einen globalen Zustand an und fehlen Instanzdaten. Daher ist es nicht möglich, eine Instanz -basierte Erweiterungsmethode zu verwenden. Console
WriteBlueLine
Es gibt jedoch eine andere Lösung: Erstellen einer statischen Verpackungsklasse rund um die statische
Zum Beispiel die Klasse, die
realisiert werden kann, wie unten gezeigt: ConfigurationManager
Durch die Aufrufmethode kann der Code vermeiden, die Unannehmlichkeiten von ConfigurationManagerWrapper
zu wiederholen.
Das obige ist der detaillierte Inhalt vonKönnen Erweiterungsmethoden zu statischen Klassen in C#hinzugefügt werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!