Wenn zum ersten Mal auf die Klasse zugegriffen wird
Bei der Arbeit mit statischen Konstruktoren in C# ist es wichtig, den Zeitpunkt ihres Aufrufs zu verstehen . Im Gegensatz zu Instanzkonstruktoren, die bei der Objekterstellung aufgerufen werden, werden statische Konstruktoren automatisch unter bestimmten Bedingungen aufgerufen.
Wann wird also ein statischer Konstruktor aufgerufen?
Die Antwort liegt in der Natur der statischen Mitglieder selbst. Statische Mitglieder bestehen für die gesamte Lebensdauer des Programms und werden von allen Instanzen einer Klasse gemeinsam genutzt. Folglich muss ihre Initialisierung erfolgen, bevor auf einen anderen Teil der Klasse zugegriffen werden kann.
Um dies sicherzustellen, ruft die C#-Laufzeit den statischen Konstruktor auf, wenn zum ersten Mal auf die Klasse zugegriffen wird, unabhängig davon, ob ein Objekt dies getan hat erstellt wurde oder nicht. Dies tritt normalerweise auf, wenn:
Es ist jedoch zu beachten, dass das Laden der Assembly allein möglicherweise nicht den statischen Konstruktor auslöst, wenn keine statischen Mitglieder vorhanden sind zugegriffen. Nur wenn zum ersten Mal auf die Assembly zugegriffen wird (normalerweise über ihre statischen Mitglieder), wird der statische Konstruktor aufgerufen.
Zusätzliche Überlegungen:
Referenz:
Das obige ist der detaillierte Inhalt vonWann genau wird ein statischer C#-Konstruktor aufgerufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!