多くのコンストラクターと仮想メソッドを持つ基本クラスを想像してください
public class Foo
{
...
public Foo() {...}
public Foo(int i) {...}
...
public virtual void SomethingElse() {...}
...
}
そして今、仮想メソッドをオーバーライドする子孫クラスを作成したいと思います:
public class Bar : Foo
{
public override void SomethingElse() {...}
}
そして、さらにいくつかのことを行う別の子孫:
public class Bah : Bar
{
public void DoMoreStuff() {...}
}
すべてのコンストラクターを Foo から Bar と Bah にコピーする必要がありますか? そして、Foo でコンストラクターの署名を変更した場合、Bar と Bah でそれを更新する必要がありますか?
コンストラクタを継承する方法はありませんか? コードの再利用を促進する方法はありませんか?