New (Operador, Visual Basic)

Introduce una New cláusula para crear una nueva instancia de objeto, especifica una restricción de constructor en un parámetro de tipo o identifica un Sub procedimiento como un constructor de clase.

Observaciones

En una declaración o una instrucción de asignación, una New cláusula debe especificar una clase definida a partir de la cual se pueda crear la instancia. Esto significa que la clase debe exponer uno o más constructores a los que puede tener acceso el código de llamada.

Puede utilizar una New cláusula en una instrucción de declaración o una instrucción de asignación. Cuando se ejecuta la instrucción, llama al constructor adecuado de la clase especificada, pasando los argumentos que ha proporcionado. En el siguiente ejemplo se muestra la creación de instancias de una Customer clase que tiene dos constructores, uno que no toma parámetros y otro que toma un parámetro de cadena:

' 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")

Puesto que las matrices son clases, New pueden crear una nueva instancia de la matriz, como se muestra en el ejemplo siguiente:

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}

El Common Language Runtime (CLR) produce un OutOfMemoryException error si no hay memoria suficiente para crear la nueva instancia.

Nota

La New palabra clave también se usa en las listas de parámetros de tipo para especificar que el tipo proporcionado debe exponer un constructor sin parámetros accesible. Para obtener más información sobre los parámetros de tipo y las restricciones, vea Type List.

Para crear un procedimiento de constructor para una clase, establezca el nombre de un Sub procedimiento en la New palabra clave. Para obtener más información, vea duración del objeto: cómo se crean y destruyen los objetos.

La palabra clave New se puede usar en los siguientes contextos:

Vea también