Udostępnij za pomocą


Porady: deklarowanie obiektu przy użyciu inicjatora obiektów (Visual Basic)

Inicjatory obiektów umożliwiają deklarowanie i tworzenie wystąpienia klasy w jednej instrukcji. Ponadto można zainicjować jeden lub więcej członków obiektu bez wywoływania konstruktora z parametrami.

Gdy używasz inicjatora obiektów do utworzenia wystąpienia nazwanego typu, wywoływany jest konstruktor bez parametrów dla klasy, a następnie inicjalizacja wyznaczonych elementów członkowskich w określonej kolejności.

Poniższa procedura przedstawia sposób tworzenia wystąpienia Student klasy na trzy różne sposoby. Klasa ma właściwości, w tym imię, nazwisko i rok szkolny. Każda z trzech deklaracji tworzy nowe wystąpienie Student, z właściwością First przypisaną wartością "Michael", właściwością Last przypisaną wartością "Tucker" i wszystkimi innymi elementami członkowskimi ustawionymi na wartości domyślne. Wynik każdej deklaracji w procedurze jest odpowiednikiem poniższego przykładu, który nie używa inicjatora obiektu.

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

Aby zapoznać się z Student implementacją klasy, zobacz Instrukcje: tworzenie listy elementów. Możesz skopiować kod z tego tematu, aby skonfigurować klasę i utworzyć listę Student obiektów do pracy.

Aby utworzyć obiekt nazwanej klasy przy użyciu inicjatora obiektu

  1. Rozpocznij deklarację tak, jakbyś planował użyć konstruktora.

    Dim student1 As New Student

  2. Wpisz słowo kluczowe With, a następnie listę inicjowania umieszczoną w nawiasach klamrowych.

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

  3. Na liście inicjowania uwzględnij każdą właściwość, którą chcesz zainicjować, i przypisz do niej wartość początkową. Nazwa właściwości jest poprzedzona symbolem kropki.

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

    Można zainicjować jednego lub więcej członków klasy.

  4. Alternatywnie możesz zadeklarować nowe wystąpienie klasy, a następnie przypisać do niej wartość. Najpierw zadeklaruj wystąpienie klasy Student:

    Dim student2 As Student

  5. Rozpocznij tworzenie wystąpienia Student w normalny sposób.

    Dim student2 As Student = New Student

  6. Wpisz With, a następnie inicjator obiektu, aby zainicjować jeden lub więcej elementów nowego wystąpienia.

    Dim student2 As Student = New Student With {.First = "Michael", 
                                                .Last = "Tucker"}
    
  7. Definicję w poprzednim kroku można uprościć, pomijając As Studentelement. Jeśli to zrobisz, kompilator określi, że student3 jest wystąpieniem Student, wykorzystując lokalne wnioskowanie typów.

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

    Aby uzyskać więcej informacji, zobacz Wnioskowanie typu lokalnego.

Zobacz także