Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Инициализаторы объектов позволяют объявлять и создавать экземпляр класса в одной инструкции. Кроме того, можно инициализировать один или несколько элементов экземпляра одновременно, не вызывая параметризованный конструктор.
При использовании инициализатора объектов для создания экземпляра именованного типа вызывается конструктор без параметров для класса, а затем инициализация назначенных элементов в указанном порядке.
В следующей Student
процедуре показано, как создать экземпляр класса тремя способами. Класс имеет имена, фамилию и свойства года класса, среди прочего. Каждое из трех объявлений создает новый экземпляр Student
, устанавливая для свойства First
значение "Michael", для свойства Last
значение "Tucker", а все остальные члены задаются значениями по умолчанию. Результат каждого объявления в процедуре эквивалентен следующему примеру, который не использует инициализатор объектов.
Dim student0 As New Student
With student0
.First = "Michael"
.Last = "Tucker"
End With
Сведения о реализации Student
класса см. в статье "Практическое руководство. Создание списка элементов". Вы можете скопировать код из этого раздела, чтобы настроить класс и создать список Student
объектов для работы.
Создание объекта именованного класса с помощью инициализатора объектов
Начните объявление, как будто бы вы собирались использовать конструктор.
Dim student1 As New Student
Введите ключевое слово
With
, за которым следует список инициализации в фигурных скобках.Dim student1 As New Student With { <initialization list> }
В списке инициализации добавьте каждое свойство, которое требуется инициализировать и назначить ему начальное значение. Перед именем свойства стоит точка.
Dim student1 As New Student With {.First = "Michael", .Last = "Tucker"}
Вы можете инициализировать один или несколько членов класса.
Кроме того, можно объявить новый экземпляр класса, а затем назначить ему значение. Сначала объявите экземпляр
Student
:Dim student2 As Student
Начните создание экземпляра
Student
обычным способом.Dim student2 As Student = New Student
Введите
With
и затем инициализатор объектов для инициализации одного или нескольких элементов нового экземпляра.Dim student2 As Student = New Student With {.First = "Michael", .Last = "Tucker"}
Определение можно упростить на предыдущем шаге, упустив
As Student
. Если вы поступите так, компилятор определит, чтоstudent3
— это экземпляр локального типаStudent
с помощью вывода типов.Dim student3 = New Student With {.First = "Michael", .Last = "Tucker"}
Дополнительные сведения см. в разделе "Вывод локальных типов".