私は次のものを持っているとしましょう:
class Base {
public Base (int n) { }
public Base (Object1 n, Object2 m) { }
}
class Derived : Base {
string S;
public Derived (string s, int n) : base(n) {
S = s;
}
public Derived (string s, Object1 n, Object2 m) : base(n, m) {
S = s; // repeated
}
}
Derived の両方のオーバーロードで仮引数 n が必要であるため、このN = n;行を繰り返さなければならないことに注意してください。
これで別のメソッドにカプセル化できることがわかりましたが、両方のオーバーロードから同じ 2 つのメソッドを呼び出す必要があります。それで、おそらくthisと組み合わせて使用 することで、これを行うためのより「エレガントな」方法はありbaseますか?
これは、1 つの引数を取るプライベート コンストラクターを持つことができs、他の 2 つのオーバーロードがそれを呼び出すことができるようにするためです...または、これは別のプライベート メソッドを持つことと同じでしょうか?