ベースから継承する一連のクラスがあります...
public abstract class BaseClass
{
public BaseClass()
{
// ...
}
}
public abstract class BaseMessageClass : BaseClass
{
// ...
}
public SpecificMessageClass : BaseMessageClass
{
// ...
}
このようにオブジェクトをインスタンス化すると、次のようになります。
SpecificMessageClass myMessage = new SpecificMessageClass();
ただし、次のように、すべてのコンストラクターをオプションの文字列パラメーターに変更する必要があります。
public abstract class BaseClass
{
public BaseClass(string optParam="whatever")
{
// ...
}
}
ここで、オプションの引数を使用してオブジェクトをインスタンス化しようとすると、次のようになります。
SpecificMessageClass myMessage = new SpecificMessageClass("coolstring");
エラーが発生します:
'SpecificMessageClass' には、1 つの引数を取るコンストラクターが含まれていません"
継承されたクラスの各レベルでコンストラクターを明示的に宣言せずにこれを行う方法はありますか?