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.
Die new
-Beschränkung legt fest, dass ein Typargument in einer generischen Klassen- oder Methodendeklaration einen öffentlichen parameterlosen Konstruktor haben muss. Der Typ kann nicht abstrakt sein, um die new
-Einschränkung zu verwenden.
Wenden Sie die new
-Einschränkung auf einen Typparameter an, wenn Ihre generische Klasse neue Instanzen desselben Typs erstellt, wie im folgenden Beispiel gezeigt wird:
class ItemFactory<T> where T : new()
{
public T GetNewItem()
{
return new T();
}
}
Beim Verwenden der new()
-Einschränkung mit anderen Einschränkungen muss sie zuletzt angegeben werden:
public class ItemFactory2<T>
where T : IComparable, new()
{ }
Weitere Informationen finden Sie unter Einschränkungen für Typparameter.
Sie können das Schlüsselwort new
auch verwenden, um eine Instanz eines Typs zu erstellen oder als Memberdeklarationsmodifizierer.
C#-Sprachspezifikation
Weitere Informationen finden Sie im Abschnitt Einschränkungen für Typparameter der C#-Sprachspezifikation.