[VB.NET] 静的コンストラクタ

2013年12月4日

 Shared (Static) なメンバー変数の初期化を、各メンバー変数の初期化子で行うのではなく、まとめてどこかで…という場合には、静的コンストラクタに書けばよいらしいです。

 たとえば以下のように書きます。
 ポイントは Shared Sub New() に処理を書くことと、Public などのスコープは指定しないことです。

Class Class1
    Public Shared Member1 As Integer

    Shared Sub New()
        Member1 = 100
    End Sub
End Class

 呼び出し側は以下。

Module Module1
    Sub Main()
        Console.WriteLine("{0}", Class1.Member1)
    End Sub
End Module

 結果。ちゃんとコンストラクタで定義した値が取得できます。

100
続行するには何かキーを押してください . . .

 ちなみに、初期化子にも値を設定していました…というケースは New 側が優先されます。(普通のインスタンスの場合と同じ)






カテゴリー: Program, VB.NET

Follow comments via the RSS Feed | Leave a comment | Trackback URL

コメントを投稿する

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)


«   »
 
Powered by Wordpress and MySQL. Theme by Shlomi Noach, openark.org