Por que não podemos usar um construtor com parâmetro em classes derivadas
Por que isso não é possível? Eu recebo o seguinte erro de compilador ao instanciar "DerivedClass" com um parâmetro de construtor:
'GenericParameterizedConstructor.DerivedClass' não contém um construtor que leva 1 argumento
Mas chamar um método muito semelhante funciona.
Por quê?
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>
{
}