Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Führt eine Klausel zum Erstellen einer New neuen Objektinstanz ein, gibt eine Konstruktoreinschränkung für einen Typparameter an oder identifiziert eine Sub Prozedur als Klassenkonstruktor.
Bemerkungen
In einer Deklaration oder Zuweisungsanweisung muss eine New Klausel eine definierte Klasse angeben, aus der die Instanz erstellt werden kann. Dies bedeutet, dass die Klasse einen oder mehrere Konstruktoren verfügbar machen muss, auf die der aufrufende Code zugreifen kann.
Sie können eine New Klausel in einer Deklarationsanweisung oder einer Zuweisungsanweisung verwenden. Wenn die Anweisung ausgeführt wird, ruft sie den entsprechenden Konstruktor der angegebenen Klasse auf und übergibt alle argumente, die Sie angegeben haben. Im folgenden Beispiel wird dies veranschaulicht, indem Instanzen einer Customer Klasse erstellt werden, die zwei Konstruktoren enthält, eine, die keine Parameter akzeptiert, und eine, die einen Zeichenfolgenparameter verwendet:
' 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")
Da Arrays Klassen sind, New können Sie eine neue Arrayinstanz erstellen, wie im folgenden Beispiel gezeigt:
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}
Die Common Language Runtime (CLR) löst einen OutOfMemoryException Fehler aus, wenn nicht genügend Arbeitsspeicher zum Erstellen der neuen Instanz vorhanden ist.
Hinweis
Das New Schlüsselwort wird auch in Typparameterlisten verwendet, um anzugeben, dass der angegebene Typ einen barrierefreien parameterlosen Konstruktor verfügbar machen muss. Weitere Informationen zu Typparametern und Einschränkungen finden Sie unter Typliste.
Um eine Konstruktorprozedur für eine Klasse zu erstellen, legen Sie den Namen einer Sub Prozedur auf das New Schlüsselwort fest. Weitere Informationen finden Sie unter "Objektlebensdauer: Erstellen und Zerstören von Objekten".
Das New Schlüsselwort kann in folgenden Kontexten verwendet werden: