nova restrição (Referência C#)
A new
restrição especifica que um argumento type em uma declaração genérica de classe ou método deve ter um construtor sem parâmetros público. Para usar a new
restrição, o tipo não pode ser abstrato.
Aplique a new
restrição a um parâmetro type quando uma classe genérica cria novas instâncias do tipo, conforme mostrado no exemplo a seguir:
class ItemFactory<T> where T : new()
{
public T GetNewItem()
{
return new T();
}
}
Quando você usa a new()
restrição com outras restrições, ela deve ser especificada por último:
public class ItemFactory2<T>
where T : IComparable, new()
{ }
Para obter mais informações, consulte Restrições em parâmetros de tipo.
Você também pode usar a new
palavra-chave para criar uma instância de um tipo ou como um modificador de declaração de membro.
Especificação da linguagem C#
Para obter mais informações, consulte a seção Type parameter constraints da especificação da linguagem C#.