「VB.NET」クラスのオブジェクト初期化子のサンプル

2021年10月6日

書式
Dim 変数 = New クラス名 With {.プロパティ1 = “値1",.プロパティ2 = “値2",xxx}

使用例

Module Module1
    'クラスの定義
    Public Class UserInfo
        'String型の宣言
        Public userId As String
        Public username As String
        'userIdのget setメソッド
        Public Property id() As String
            Get
                Return userId
            End Get
            Set(ByVal value As String)
                userId = value
            End Set
        End Property
        'usernameのget set メソッド
        Public Property name() As String
            Get
                Return username
            End Get
            Set(ByVal value As String)
                username = value
            End Set
        End Property

    End Class

    Sub Main()
        'オブジェクト1の初期化 New クラス名 Withでプロパティに値を設定
        Dim user = New UserInfo With {.userId = 2001, .username = "テスト太郎"}

        'オブジェクト2の初期化 New クラス名 Withでプロパティに値を設定
        Dim user2 = New UserInfo With {.userId = 4002, .username = "テスト二郎"}

        Console.WriteLine("オブジェクト1の初期値")
        Console.WriteLine("ユーザーID: " + user.userId)
        Console.WriteLine("ユーザー名: " + user.username)
        Console.WriteLine("")
        Console.WriteLine("オブジェクト2の初期値")
        Console.WriteLine("ユーザーID: " + user2.userId)
        Console.WriteLine("ユーザー名: " + user2.username)

        Console.ReadKey()
    End Sub


End Module

実行結果
オブジェクト1の初期値
ユーザーID: 2001
ユーザー名: テスト太郎

オブジェクト2の初期値
ユーザーID: 4002
ユーザー名: テスト二郎

VB.net

Posted by arkgame