Comment : déclarer un objet à l'aide d'un initialiseur d'objet (Visual Basic)
Les initialiseurs d’objets vous permettent de déclarer et d’instancier une instance d’une classe dans une instruction unique. En outre, vous pouvez initialiser un ou plusieurs membres de l’instance en même temps, sans avoir à appeler un constructeur paramétrable.
Lorsque vous utilisez un initialiseur d’objet pour créer une instance d’un type nommé, le constructeur sans paramètre de la classe est appelé, suivi de l’initialisation des membres désignés dans l’ordre que vous spécifiez.
La procédure suivante montre trois manières différentes de créer une instance d’une classe Student
. La classe comporte des propriétés qui définissent le prénom, le nom et l’année scolaire, entre autres. Chacune des trois déclarations crée une nouvelle instance de Student
, avec la propriété First
définie sur "Michael", la propriété Last
définie sur "Tucker" et tous les autres membres définis sur leurs valeurs par défaut. Le résultat de chaque déclaration dans la procédure est équivalent à l’exemple suivant, qui n’utilise pas d’initialiseur d’objet.
Dim student0 As New Student
With student0
.First = "Michael"
.Last = "Tucker"
End With
Pour une implémentation de la classe Student
, consultez Procédure : Créer une liste d’éléments. Vous pouvez copier le code de cette rubrique pour définir la classe et créer une liste d’objets Student
à utiliser.
Pour créer un objet d’une classe nommée à l’aide d’un initialiseur d’objet
Commencez la déclaration comme si vous vouliez utiliser un constructeur.
Dim student1 As New Student
Tapez le mot clé
With
, suivi d’une liste d’initialisation entre accolades.Dim student1 As New Student With { <initialization list> }
Dans la liste d’initialisation, incluez chaque propriété à initialiser et attribuez-lui une valeur initiale. Le nom de la propriété est précédé d’un point.
Dim student1 As New Student With {.First = "Michael", .Last = "Tucker"}
Vous pouvez initialiser un ou plusieurs membres de la classe.
Vous pouvez également déclarer une nouvelle instance de la classe, puis lui attribuer une valeur. Tout d’abord, déclarez une instance de
Student
:Dim student2 As Student
Commencez la création d’une instance de
Student
de la façon habituelle.Dim student2 As Student = New Student
Tapez
With
, puis un initialiseur d’objet pour initialiser un ou plusieurs membres de la nouvelle instance.Dim student2 As Student = New Student With {.First = "Michael", .Last = "Tucker"}
Vous pouvez simplifier la définition à l’étape précédente en omettant
As Student
. Dans ce cas, le compilateur détermine questudent3
est une instance deStudent
en utilisant l’inférence de type de variable locale.Dim student3 = New Student With {.First = "Michael", .Last = "Tucker"}
Pour plus d’informations, consultez Inférence de type de variable locale.