Shared(静的〇〇〇)
メンバ(メソッドやプロパティ等)にSharedを付けることで、
そのメンバはインスタンスメンバではなくクラスメンバとなる。
⇒
・クラスのインスタンスが無くとも、当該メンバにアクセスできる。
・プロシージャが終了してもSharedメンバの値はクリアされない。
・静的メソッドは、Sharedを付与したメソッドの事。
・staticは、vbではローカル変数にしか付与できない。
・アプリケーションが終了するまでクリアされない。
Public Class Class3
Public Shared Property outMsg As String
Public Property outMsg2 As String
End Class
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'--- SharedはClass名.メンバ名でアクセス
Class3.outMsg += 50
Dim a As New Class3
a.outMsg2 += 50
Console.WriteLine(Class3.outMsg)
Console.WriteLine(a.outMsg2)
End Sub
上記は、ボタンを押すたびに、outMsgは50が加算された数字が出力。
outMsg2は、毎回50が出力される。