共用方式為


HOW TO:使用物件初始設定式宣告物件 (Visual Basic)

物件初始設定式可讓您在單一陳述式 (Statement) 中宣告及具現化類別 (Class) 的執行個體 (Instance)。 此外,您可以同時初始化執行個體的一個或多個成員,而不需要叫用 (Invoke) 參數型建構函式 (Constructor)。

當您使用物件初始設定式來建立具名型別的執行個體時,會呼叫類別的預設建構函式,接著按照您指定的順序初始化指定的成員。

下列程序顯示如何以三種不同的方式來建立 Student 類別的執行個體。 此類別具有姓氏、名字和年級屬性。 這三項宣告中的每一項都會建立 Student 的新執行個體,其 First 屬性設為 "Michael"、Last 屬性設為 "Tucker",而其他所有屬性則設為預設值。 此程序中的每項宣告結果都符合下列不使用物件初始設定式的範例。

Dim student0 As New Student
With student0
    .First = "Michael"
    .Last = "Tucker"
End With

如需 Student 類別的實作 (Implementation),請參閱 HOW TO:建立項目清單。 您可以複製該主題中的程式碼,以設定類別並建立要處理的 Student 物件。

視訊的連結 如需本主題的影片版本,請參閱影片:HOW TO:使用物件初始設定式宣告物件 (英文)。

若要使用物件初始設定式建立具名類別的物件

  1. 如同您計劃使用建構函式一樣開始宣告。

    Dim student1 As New Student

  2. 輸入關鍵字 With,後面接著以大括弧括住的初始設定清單。

    Dim student1 As New Student With { <initialization list> }

  3. 在初始設定清單中,包含您想初始化的每個屬性並且指派其初始值。 屬性名稱前面必須有一個句號。

    Dim student1 As New Student With {.First = "Michael", 
                                      .Last = "Tucker"}
    

    您可以初始化類別的一個或多個成員。

  4. 此外,您也可以宣告類別的新執行個體,然後指派其值。 首先,宣告 Student 的執行個體:

    Dim student2 As Student

  5. 以正常方式開始建立 Student 的執行個體。

    Dim student2 As Student = New Student

  6. 依序輸入 With 和物件初始設定式,以初始化新執行個體的一個或多個成員。

    Dim student2 As Student = New Student With {.First = "Michael", 
                                                .Last = "Tucker"}
    
  7. 您可以省略 As Student,以簡化前一個步驟中的定義。 如果您這麼做,編譯器 (Compiler) 會使用區域型別推斷,判斷 student3 為 Student 的執行個體。

    Dim student3 = New Student With {.First = "Michael", 
                                     .Last = "Tucker"}
    

    如需詳細資訊,請參閱區域型別推斷 (Visual Basic)

請參閱

工作

HOW TO:建立項目清單

HOW TO:宣告匿名型別的執行個體 (Visual Basic)

概念

區域型別推斷 (Visual Basic)

物件初始設定式:具名和匿名型別 (Visual Basic)

具名和匿名型別比較 (Visual Basic)