Restricción new (Referencia de C#)

La restricción new especifica que un tipo de argumento en una declaración de clase o de método genéricas debe tener un constructor público sin parámetros. Para usar la restricción new, el tipo no puede ser abstracto.

Aplique la restricción new a un tipo de parámetro cuando una clase genérica cree otras instancias del tipo, tal y como se muestra en el ejemplo siguiente:

class ItemFactory<T> where T : new()
{
    public T GetNewItem()
    {
        return new T();
    }
}

Cuando use la restricción new() con otras restricciones, se debe especificar en último lugar:

public class ItemFactory2<T>
    where T : IComparable, new()
{  }

Para obtener más información, vea Restricciones de tipos de parámetros.

También puede usar la palabra clave new para crear una instancia de un tipo o como un modificador de declaración de miembro.

Especificación del lenguaje C#

Para más información, vea la sección Restricciones de parámetros de tipo de la Especificación del lenguaje C#.

Consulte también