Оператор New (Visual Basic)

New Представляет предложение для создания нового экземпляра объекта, задает ограничение конструктора для параметра типа или определяет процедуру Sub как конструктор класса.

Замечания

В инструкции New объявления или назначения предложение должно указать определенный класс, из которого можно создать экземпляр. Это означает, что класс должен предоставлять один или несколько конструкторов, к которым может получить доступ вызывающий код.

Предложение можно использовать New в инструкции объявления или инструкции назначения. При выполнении инструкции вызывает соответствующий конструктор указанного класса, передавая все предоставленные аргументы. В следующем примере показано, как создать экземпляры Customer класса, имеющего два конструктора, один из них не принимает параметров и принимает строковый параметр:

' For customer1, call the constructor that takes no arguments.
Dim customer1 As New Customer()

' For customer2, call the constructor that takes the name of the 
' customer as an argument.
Dim customer2 As New Customer("Blue Yonder Airlines")

' For customer3, declare an instance of Customer in the first line 
' and instantiate it in the second.
Dim customer3 As Customer
customer3 = New Customer()

' With Option Infer set to On, the following declaration declares
' and instantiates a new instance of Customer.
Dim customer4 = New Customer("Coho Winery")

Так как массивы являются классами, New можно создать новый экземпляр массива, как показано в следующем примере:

Dim intArray1() As Integer
intArray1 = New Integer() {1, 2, 3, 4}

Dim intArray2() As Integer = {5, 6}

' The following example requires that Option Infer be set to On.
Dim intArray3() = New Integer() {6, 7, 8}

Среда CLR вызывает ошибку OutOfMemoryException , если для создания нового экземпляра недостаточно памяти.

Примечание.

Ключевое слово New также используется в списках параметров типа, чтобы указать, что указанный тип должен предоставлять доступный конструктор без параметров. Дополнительные сведения о параметрах и ограничениях типа см. в разделе "Список типов".

Чтобы создать процедуру конструктора Sub для класса, задайте имя процедуры ключевое слово New . Дополнительные сведения см. в разделе "Время существования объекта": создание и уничтожение объектов.

Ключевое слово New можно использовать в следующих контекстах:

См. также