Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los inicializadores de objeto permiten declarar e instanciar una clase en una sola instrucción. Además, puede inicializar uno o varios miembros de la instancia al mismo tiempo, sin invocar un constructor con parámetros.
Cuando se usa un inicializador de objeto para crear una instancia de un tipo con nombre, se llama al constructor sin parámetros para la clase, seguido de la inicialización de los miembros designados en el orden especificado.
En el procedimiento siguiente se muestra cómo crear una instancia de una Student clase de tres maneras diferentes. La clase tiene propiedades de nombre, apellido y curso, entre otras. Cada una de las tres declaraciones crea una nueva instancia de Student, con la propiedad First establecida en "Michael", propiedad Last establecida en "Tucker" y todos los demás miembros establecidos en sus valores predeterminados. El resultado de cada declaración del procedimiento es equivalente al ejemplo siguiente, que no usa un inicializador de objeto.
Dim student0 As New Student
With student0
.First = "Michael"
.Last = "Tucker"
End With
Para obtener una implementación de la Student clase, vea How to: Create a List of Items. Puede copiar el código de ese tema para configurar la clase y crear una lista de Student objetos con los que trabajar.
Para crear un objeto de una clase con nombre mediante un inicializador de objeto
Comience la declaración como si tuviera previsto usar un constructor.
Dim student1 As New StudentEscriba la palabra clave
With, seguida de una lista de inicialización entre llaves.Dim student1 As New Student With { <initialization list> }En la lista de inicialización, incluya cada propiedad que quiera inicializar y asignarle un valor inicial. El nombre de la propiedad va precedido de un punto.
Dim student1 As New Student With {.First = "Michael", .Last = "Tucker"}Puede inicializar uno o varios miembros de la clase .
Como alternativa, puede declarar una nueva instancia de la clase y, a continuación, asignarle un valor. En primer lugar, declare una instancia de
Student:Dim student2 As StudentComience la creación de una instancia de
Studentde forma normal.Dim student2 As Student = New StudentEscriba
Withy, a continuación, un inicializador de objeto para inicializar uno o varios miembros de la nueva instancia.Dim student2 As Student = New Student With {.First = "Michael", .Last = "Tucker"}Puede simplificar la definición en el paso anterior omitiendo
As Student. Si lo hace, el compilador determina questudent3es una instancia deStudentmediante la inferencia de tipos locales.Dim student3 = New Student With {.First = "Michael", .Last = "Tucker"}Para obtener más información, consulte Inferencia de tipos locales.