Como declarar um objeto usando um inicializador de objeto (Visual Basic)
Os inicializadores de objeto permitem que você declare e instancie uma instância de uma classe em uma única instrução. Além disso, você pode inicializar um ou mais membros da instância ao mesmo tempo, sem invocar um construtor parametrizado.
Quando você usa um inicializador de objeto para criar uma instância de um tipo nomeado, o construtor sem parâmetros para a classe é chamado, seguido pela inicialização de membros designados na ordem especificada.
O procedimento a seguir mostra como criar uma instância de uma Student
classe de três maneiras diferentes. A classe tem propriedades de nome, sobrenome e ano de aula, entre outros. Cada uma das três declarações cria uma nova instância de Student
, com a propriedade definida como "Michael", a propriedade First
Last
definida como "Tucker" e todos os outros membros definidos com seus valores padrão. O resultado de cada declaração no procedimento é equivalente ao exemplo a seguir, que não usa um inicializador de objeto.
Dim student0 As New Student
With student0
.First = "Michael"
.Last = "Tucker"
End With
Para uma implementação da Student
classe, consulte Como criar uma lista de itens. Você pode copiar o código desse tópico para configurar a classe e criar uma lista de Student
objetos para trabalhar.
Para criar um objeto de uma classe nomeada usando um inicializador de objeto
Comece a declaração como se você planejasse usar um construtor.
Dim student1 As New Student
Digite a palavra-chave
With
, seguida por uma lista de inicialização em chaves.Dim student1 As New Student With { <initialization list> }
Na lista de inicialização, inclua cada propriedade que você deseja inicializar e atribua um valor inicial a ela. O nome do imóvel é precedido de um ponto.
Dim student1 As New Student With {.First = "Michael", .Last = "Tucker"}
Você pode inicializar um ou mais membros da classe.
Como alternativa, você pode declarar uma nova instância da classe e, em seguida, atribuir um valor a ela. Primeiro, declare uma instância de
Student
:Dim student2 As Student
Comece a criação de uma instância de
Student
da maneira normal.Dim student2 As Student = New Student
Digite
With
e, em seguida, um inicializador de objeto para inicializar um ou mais membros da nova instância.Dim student2 As Student = New Student With {.First = "Michael", .Last = "Tucker"}
Você pode simplificar a definição na etapa anterior omitindo
As Student
. Se você fizer isso, o compilador determinará questudent3
é uma instância de usando inferência deStudent
tipo local.Dim student3 = New Student With {.First = "Michael", .Last = "Tucker"}
Para obter mais informações, consulte Inferência de tipo local.