Static yapıcı
Sınıf düzeyinde bir kez çalışan static yapıcıyı öğrenirsin.
Static yapıcı
Static yapıcı (static constructor), tür ilk kez kullanılmadan önce bir kez çalışır. Statik alanları başlatmak veya tür düzeyinde hazırlık yapmak için kullanılır. Bildirimi: static Config() { ... }.
Erişim belirleyici almaz, parametre almaz ve aşırı yüklenemez. Yalnızca bir tane yazılabilir. new ile değil, türün ilk erişiminde otomatik tetiklenir. Genellikle yapılandırma yükleme, önbellek hazırlığı veya sabit atamalar için kullanılır.
Çalışma zamanı garantisi
Static yapıcının ne zaman çalışacağı kesindir: türün herhangi bir statik alanına erişildiğinde, statik metodu çağrıldığında ya da örnek üretildiğinde — hangisi önceyse o an tetiklenir. Bir kez çalışır; ikinci kez tetiklenmez.
Bu yüzden yapılandırma veya başlangıç verisi yüklemek için idealdir. Ancak ağır işlemler koymak uygulamanın ilk çağrısını yavaşlatabilir; bu yüzden static yapıcı kısa tutulur. İstisna fırlatırsa tür kullanılamaz hale gelir.
Uygulama Config sınıfına static yapıcı ekle
Config sınıfına public static string Version; statik alanını ekle. Ardından static Config() yapıcısı tanımla ve gövdede Version = "1.0"; ata. Main içinde Config.Version'u yazdır (örnek oluşturma; statik alana doğrudan eriş).
Örnek çözümü göster
Config içine public static string Version; ve static Config() { Version = "1.0"; } ekle. Main içine Console.WriteLine(Config.Version); yaz.
Örnek çözüm:
using System;
class Config
{
public static string Version;
static Config()
{
Version = "1.0";
}
}
class Program
{
static void Main()
{
Console.WriteLine(Config.Version);
}
}
Kendini test et
-
Static yapıcı bildirimini tamamla
class Config { ____ Config() { Version = "1.0"; } }Cevabı göster
class Config { static Config() { Version = "1.0"; } } -
Static yapıcı ne zaman çalışır?
- Tür ilk kullanıldığında, bir kez
- Her new çağrısında
- Program başında her zaman
- Asla
Cevabı göster
Tür ilk kullanıldığında, bir kez — Doğru. Static yapıcı tür ilk erişiminde bir kez tetiklenir.
-
Static yapıcı özelliği tanıma eşle
- Erişim belirleyici yok
- Bildirim biçimi
- Parametre almaz
- İmza kuralı
- Bir kez çalışır
- Çalışma sayısı
- Tür ilk kullanımda
- Tetiklenme anı