より説明的になるように質問のタイトルを変更する方法について提案がある場合は、お気軽にお知らせください。
オブジェクトを返すクラス メソッドがあるとします。メソッド内でオブジェクトを作成するためのベスト プラクティスまたは標準的な方法はありますか? 明確にするために、以下を参照してください。
public MyCustomObject myMethod(String arg1, String arg2){
try{
if (something){
...
} else {
...
}
} catch ( SomeException e ){
...
} catch ( SomeOtherException e ){
...
}
return myCustomObject;
}
MyCustomObject には、空のコンストラクター、5 つのフィールドとゲッター/セッターを持つコンストラクターがあります。上記の (簡略化された) フローのすべてのケースで、有効な MyCustomObject を返す必要があります。制御フロー自体に注目しないでください。
私は次のいずれかができると思います: a) MyCustomObject 型の変数をメソッドの先頭に null で初期化します。制御フローのさまざまなケースごとに、新しい MyCustomObject をそれに割り当てます。最後に返してください。b) 空のコンストラクターを使用して、最初に MyCustomObject をインスタンス化します。フロー内の各ケースのセッターを使用してオブジェクトを変更します。
上記のいずれかまたは別の方法が望ましい理由を考えていただけますか?
ありがとう