次の問題を解決するにはどうすればよいconstructor overloading
ですか? これはインタビューの質問ですが、解決策を知りたいです。
class Player
{
int nationalRank;
int internationalRank;
String name;
Player(String name, int nationalRank)
{
this.name= name;
this.nationalRank = nationalRank;
this.internationalRank=0;
}
Player(String name, int internationalRank)
{
this.name= name;
this.nationalRank = 0;
this.internationalRank=internationalRank;
}
}
ここでは、引数の型が両方のコンストラクターで同じであるため、コンパイラーはエラーを出します。しかし、論理的には両者は異なります。余分な引数を追加せずにこの問題を解決するにはどうすればよいですか? これ専用のデザインパターンはありますか?