•靜態(tài)構(gòu)造函數(shù)既沒(méi)有訪問(wèn)修飾符,也沒(méi)有參數(shù)。
•如果沒(méi)有編寫(xiě)靜態(tài)構(gòu)造函數(shù),而這時(shí)類中包含帶有初始值設(shè)定的靜態(tài)字段,那么編譯器會(huì)自動(dòng)生成默認(rèn)的靜態(tài)構(gòu)造函數(shù)。
•在創(chuàng)建第一個(gè)類實(shí)例或任何靜態(tài)成員被引用時(shí),.NET將自動(dòng)調(diào)用靜態(tài)構(gòu)造函數(shù)來(lái)初始化類,也就是說(shuō)我們無(wú)法直接調(diào)用靜態(tài)構(gòu)造函數(shù),也就無(wú)法控制什么時(shí)候執(zhí)行靜態(tài)構(gòu)造函數(shù)了。
•如果類中包含用來(lái)開(kāi)始執(zhí)行的 Main 方法,則該類的靜態(tài)構(gòu)造函數(shù)將在調(diào)用 Main 方法之前執(zhí)行。
•如果類中的靜態(tài)字段帶有初始化,則靜態(tài)字段的初始化語(yǔ)句將在靜態(tài)構(gòu)造函數(shù)之前運(yùn)行。
•一個(gè)類只能有一個(gè)靜態(tài)構(gòu)造函數(shù)。
•無(wú)參數(shù)的構(gòu)造函數(shù)可以與靜態(tài)構(gòu)造函數(shù)共存。盡管參數(shù)列表相同,但一個(gè)屬于類,一個(gè)屬于實(shí)例,所以不會(huì)沖突。
•最多只運(yùn)行一次。
•靜態(tài)構(gòu)造函數(shù)不可以被繼承。
•示例代碼如下:
運(yùn)行的結(jié)果是:
static A()
static B()
X=1,Y=2
新聞熱點(diǎn)
疑難解答
圖片精選