Útmutató: Objektum deklarálása objektum inicializálóval (Visual Basic)
Az objektum-inicializálók segítségével egyetlen utasításban deklarálhatja és példányosíthatja az osztály egy példányát. Emellett inicializálhatja a példány egy vagy több tagját egyszerre, paraméteres konstruktor meghívása nélkül.
Ha objektum inicializálóval hoz létre egy elnevezett típusú példányt, a rendszer meghívja az osztály paraméter nélküli konstruktorát, majd inicializálja a kijelölt tagokat a megadott sorrendben.
Az alábbi eljárás azt mutatja be, hogyan hozhat létre egy osztálypéldányt Student
három különböző módon. Az osztály többek között utónévvel, vezetéknévvel és osztályév-tulajdonságokkal rendelkezik. A három deklaráció mindegyike létrehoz egy új példányt, amelynek a tulajdonsága Student
First
"Michael", a tulajdonság Last
értéke "Tucker", a többi tag pedig az alapértelmezett értékre van állítva. Az eljárás minden egyes deklarációjának eredménye egyenértékű az alábbi példával, amely nem használ objektum inicializálót.
Dim student0 As New Student
With student0
.First = "Michael"
.Last = "Tucker"
End With
Az osztály implementációja: Student
Útmutató: Elemek listájának létrehozása. A témakör kódját átmásolva beállíthatja az osztályt, és létrehozhatja a Student
használható objektumok listáját.
Elnevezett osztály objektumának létrehozása objektum inicializáló használatával
Kezdje el a deklarációt úgy, mintha konstruktort szeretne használni.
Dim student1 As New Student
Írja be a kulcsszót
With
, majd egy inicializálási listát a zárójelek közé.Dim student1 As New Student With { <initialization list> }
Az inicializálási listában adja meg az inicializálni kívánt összes tulajdonságot, és rendeljen hozzá egy kezdeti értéket. A tulajdonság nevét pont előzi meg.
Dim student1 As New Student With {.First = "Michael", .Last = "Tucker"}
Az osztály egy vagy több tagját inicializálhatja.
Másik lehetőségként deklarálhatja az osztály új példányát, majd hozzárendelhet hozzá egy értéket. Először deklaráljuk a következő példányt
Student
:Dim student2 As Student
Kezdje el a normál módon létrehozni egy példányt
Student
.Dim student2 As Student = New Student
Írjon be
With
egy objektum inicializálót az új példány egy vagy több tagjának inicializálásához.Dim student2 As Student = New Student With {.First = "Michael", .Last = "Tucker"}
Az előző lépésben leegyszerűsítheti a definíciót a kihagyással
As Student
. Ha ezt teszi, a fordító helyi típusú következtetéssel állapítja meg, hogystudent3
ez egy példányStudent
.Dim student3 = New Student With {.First = "Michael", .Last = "Tucker"}
További információ: Helyi típus következtetése.