Share via


Ny operator (Visual Basic)

Introducerar en New sats för att skapa en ny objektinstans, anger en konstruktorbegränsning för en typparameter eller identifierar en Sub procedur som en klasskonstruktor.

Kommentarer

I en deklaration eller tilldelningsinstruktion måste en New sats ange en definierad klass som instansen kan skapas från. Det innebär att klassen måste exponera en eller flera konstruktorer som anropande kod kan komma åt.

Du kan använda en New sats i en deklarationssats eller en tilldelningsinstruktion. När -instruktionen körs anropas lämplig konstruktor för den angivna klassen och skickar alla argument som du har angett. Följande exempel visar detta genom att skapa instanser av en Customer klass som har två konstruktorer, en som inte tar några parametrar och en som tar en strängparameter:

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

Eftersom matriser är klasser New kan du skapa en ny matrisinstans, som du ser i följande exempel:

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 (Common Language Runtime) genererar ett OutOfMemoryException fel om det inte finns tillräckligt med minne för att skapa den nya instansen.

Kommentar

Nyckelordet New används också i typparameterlistor för att ange att den angivna typen måste exponera en tillgänglig parameterlös konstruktor. Mer information om typparametrar och begränsningar finns i Typlista.

Om du vill skapa en konstruktorprocedur för en klass anger du namnet på en Sub procedur till nyckelordet New . Mer information finns i Objektlivslängd: Hur objekt skapas och förstörs.

Nyckelordet New kan användas i följande sammanhang:

Se även