爲什麼這是不可能的?爲什麼我們不能在派生類中使用帶參數的構造函數
「GenericParameterizedConstructor.DerivedClass」不包含一個構造函數參數1
但調用一個非常類似的方法作品: 我實例化時「DerivedClass」與構造函數參數得到下面的編譯器錯誤。
爲什麼?
class Program
{
static void Main(string[] args)
{
// This one produces a compile error
// DerivedClass cls = new DerivedClass("Some value");
// This one works;
DerivedClass cls2 = new DerivedClass();
cls2.SomeMethod("Some value");
}
}
public class BaseClass<T>
{
internal T Value;
public BaseClass()
{
}
public BaseClass(T value)
{
this.Value = value;
}
public void SomeMethod(T value)
{
this.Value = value;
}
}
public class DerivedClass : BaseClass<String>
{
}
謝謝。你是對的。讓我誤解的是,Base類的無參構造函數在實例化DerivedClass時總是被調用 - 即使DerivedClass中存在無參數構造函數。 –