new 條件約束 (C# 參考)

條件 new 約束指定泛型類別或方法宣告中的型別引數必須具有公用無參數建構函式。 若要使用 new 條件約束,型別不能為抽象。

當泛型類別建立新的型別執行個體時,將 new 條件約束套用至型別參數,如下列範例所示:

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

當您使用 new() 條件約束與其他條件約束時,它必須是最後一個指定的︰

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

如需詳細資訊,請參閱型別參數的條件約束

您也可以使用 new 關鍵字來建立型別的執行個體或作為成員宣告修飾詞

C# 語言規格

如需詳細資訊,請參閱 C# 語言規格中的型別參數條件約束一節。

另請參閱