コンストラクタから、別のオーバーロードされたコンストラクタを呼び出すにはコンストラクタ初期化子を用います。 メソッド内のコードが、同名のオーバーロードされたメソッドを呼び出すことは簡単です。そのまま、呼び出したいメソッドのパラメータに合わせて引数を指定するだけです。 public void M() { M(10); } //M() から M(int) の呼び出し public void M(int i) { } ところが new 演算子でインスタンスが作成されるときのみ実行されるコンストラクタの場合は、メソッドのように明示的に呼び出すことができません。コンストラクタ内の初期化処理が同一で、既定の値で初期化するか、明示的にパラメータで初期値を指定するかの違いだけでオーバーロードする場合、同じ初期化コードが複数のオーバーロードされたコンストラクタに複製されている状態は、コードの保守性から考えて