2010-02-09 142 views
13

我正在重寫VB.NET中的C#類。在C#類有一個靜態構造函數在它:VB.NET中的靜態構造函數

static Class() 
{ 
    ... 
} 

其中,通過調用堆棧,我發現是由主窗口的InitializeComponent()方法調用。無論我已經看了告訴我,在VB.NET相應的靜態構造函數就是:

Shared Sub New() 
    ... 
End Sub 

但這種方法不會被調用。我是否創建了我的VB.NET靜態構造函數?它可能是與我的靜態構造函數無關的其他東西嗎?

回答

11

靜態構造函數由application domain中發生的以下第一個事件觸發。

  1. 那個類的一個實例被創建
  2. 任何 類的靜態成員的被訪問/被引用。
+0

是的,你是對的。他們正在創建一個臨時類來調用靜態觸發器。 – 2010-02-09 15:55:48