C#new意思
在C#中,new
關鍵字有多種用途,以下是其中的一些:
-
創建對象:
new
關鍵字用於創建對象實例。例如:MyClass obj = new MyClass();
-
調用無參數構造函式:當創建對象時,如果沒有顯示地提供參數,C#會自動調用無參數的構造函式。如果類中沒有定義無參數的構造函式,則需要提供一個有參數的構造函式,並在創建對象時提供相應的參數。
-
調用靜態方法:
new
關鍵字還可以用於調用靜態方法。例如:MyClass.NewMethod();
-
使用new約束:在泛型編程中,
new
約束用於確保類型參數至少有一個公共的無參數構造函式。例如:public class MyClass<T> where T : new() { public T Instance { get; } public MyClass() { Instance = new T(); } }
-
使用new修飾符:
new
修飾符用於隱藏從基類繼承的成員。例如:public class MyClass : BaseClass { public new void Method() { // 此方法隱藏了從基類繼承的 Method() 方法。 } }
-
使用new約束的泛型方法:在泛型方法中,
new
約束用於確保類型參數至少有一個公共的無參數構造函式。例如:public void MyMethod<T>(T obj) where T : new() { T newObj = new T(); }
-
使用new關鍵字初始化集合:在C# 9.0中,可以使用
new
關鍵字初始化集合。例如:List<int> numbers = new() { 1, 2, 3 };
請注意,new
關鍵字的具體用法取決於上下文。在上述例子中,new
關鍵字用於創建對象、調用靜態方法、提供無參數構造函式的約束、隱藏基類成員、提供泛型方法的構造函式約束以及初始化集合。