例項構造器即例項建構函式,型別構造器也就是靜態建構函式.
(1)在例項構造器裡面,我們可以初始化類的例項欄位和靜態欄位.
class
test
(2)在型別構造器裡面我們只能初始化靜態字段,其目的也在於此.
class
test
(3)例項構造器和型別構造器觸發的條件不一樣.
例項構造器是在乙個類的例項構造的時候被呼叫的,型別構造器是在類的第一次訪問的時候被呼叫的.
那麼,可以說:如果乙個類的例項構造器被呼叫的話,那麼它的型別構造器也一定會被呼叫(如果有的話),反之行不通.
class
test
static
test()
public
class
附:難度級別定義(來自msdn)
100: 介紹性的、概括性資料的技術等級。假設對主題或所談及的主題概念、功能、特性和優點有很少了解或不是十分了解。
200:中間層次資料的技術等級。假設具有100級的知識並有該主題的特定培訓和學習。
300:高階資料的技術等級。假設具有200級的知識並且具有對真實應用環境特性的深刻了解和很熟練的編碼技巧。提供對產品/技術特性的子集的詳細技術概覽,包括體系結構、效能、移植、部署和開發。
400: 專家級資料的技術等級。假設具有深層次的技術知識和經驗,並且具有對主題的詳細和全面的理解。提供專家到專家的互動和對特定主題的覆蓋。
希望大家的文章也附帶難度級別以做參考
posted @
2009-10-31 22:14
與時俱進 閱讀(
0) 編輯收藏
讀 總結 6 詳談例項構造器和型別構造器
例項構造器是允許將型別的例項初始化為良好狀態的一種特殊方法,它在類的每個新例項建立的時候執行。如下 namespace constructordemo1 class program 注意 建構函式的執行順序為 成員初始化 基類構造函式呼叫 建構函式體執行 型別構造器,也稱為靜態構造器。它的作用是設定...
型別構造器
記得我在分析 readonly 關鍵字那篇文字裡,我用到了型別構造器。後來想了想,我能不能不用型別構造器呢?左想右想,還是不行,非得用它不可,因為欄位是 readonly 修飾,且他娘的還是 static 的,地球人都知道,我絕不能拿物件構造器去初始化乙個 static 修飾的字段。我查了查 clr...
型別構造器
clr還支援型別構造器,也稱為靜態構造器。c 型別構造器可應用引用型別和值型別,永遠沒有引數。主要作用是 設定型別中靜態欄位的初始化。型別構造器不一定要在類中定義,但是最多也只能有乙個。例 class sometype class sometype 等價於 class sometype 還有 cla...