2010-02-09 10 views
13

Tôi đang viết lại một lớp C# trong VB.NET. C# lớp có một constructor tĩnh trong nó:Hàm tạo tĩnh trong VB.NET

static Class() 
{ 
    ... 
} 

đó, thông qua các cuộc gọi stack, tôi thấy được gọi là bằng phương pháp() InitializeComponent cửa sổ chính. Ở khắp mọi nơi tôi đã nhìn đã nói với tôi rằng các nhà xây dựng tĩnh tương ứng trong VB.NET chỉ là:

Shared Sub New() 
    ... 
End Sub 

Nhưng phương pháp này không bao giờ được gọi. Tôi có đang tạo hàm dựng tĩnh VB.NET của mình không? Nó có khả năng cái gì khác mà không có gì để làm với constructor tĩnh của tôi?

Trả lời

11

Hàm khởi tạo tĩnh được kích hoạt bởi sự kiện đầu tiên trong số các sự kiện sau xảy ra trong một application domain.

  1. Một thể hiện của lớp đó được tạo ra
  2. Bất kỳ của các thành viên tĩnh của lớp được truy cập/tham chiếu.
+0

Vâng, bạn đã đúng. Họ đã tạo ra một lớp tạm thời để gọi trình kích hoạt tĩnh. –