18

カスタム クラスに 2 つのコンストラクターがあり、そのうちの 1 つが追加の引数を取り、最初のコンストラクターが行うすべてのことを実行しますが、コードを 1 行だけ追加します (この追加の行は追加の引数を使用します)。最初のコンストラクターですべてのコードを複製する必要がありますか?

サンプルコード

public myConstuctor(int number, int number2){

    int result = (number + number2);
    int result2 = (number2 - number1)

    //Etc
    //Etc
    //Etc
    //Etc

}

public myConstructor(int number1, int number2, int number 3){

    int result = (number + number2);
    int result2 = (number2 - number1)

    //Etc
    //Etc
    //Etc
    //Etc

    int result3 = (result + result2 + number3)


}
4

4 に答える 4

7

引数が多すぎて管理できない場合は、ビルダー パターンを使用することもできます。

MyClass obj = Myclass.set1(number1).setN2(number2).setN3(number3).build();

build()面倒なコンストラクターを呼び出すことができます。

于 2013-08-12T16:23:38.623 に答える