は二つのアプローチです:すべてのクラスのプロパティを持つすべてのクラスプロパティまたはセッターを持つデフォルトのコンストラクタを持つコンストラクタ?続き
- コンストラクタ
長所:私は、私は(コンパイラが私を警告するエラーを作るので、もしパラメータの種類の数を正確に配置する必要がありますところで、パラメータリストで2つのIntegerを間違って切り替えるという問題を防ぐ手段はありますか?)
短所:私は多くのプロパティを持っていると、インスタンス化の行が本当に長くなり、他の行
- セッターとデフォルトの空のコンストラクタ
長所:(私ははっきりと私が設定してるかを見ることができますので、私は何か間違ったことをやっている場合、私はすぐに私はそれを入力していて、それを正確に特定することができます
短所:多くのプロパティを持つオブジェクトのインスタンス化には数行(実際にはconかどうかはわかりません)が必要です。if私はコンパイラが何も言わないプロパティを設定することを忘れています。
あなたは何をし、なぜですか? ライトパターンを知っていますか(7+プロパティがインスタンス化されるたびに使用する必要があると考えていますか?) 私は、私が探している変数がどこにあるのかわからない大規模なコンストラクタを嫌う傾向があるため、これを求めています。一方、「すべてのプロパティを設定する」は、 。
彼らは唯一の鉱山の考え:)
更新されているとして、賛否両論の私の仮定の引数に気軽 - これに関連している私が見つけた質問:Building big, immutable objects without using constructors having long parameter lists
説明コードありがとう –
複雑なオブジェクトを持っていれば、ビルダーは本当に素晴らしいです。私は強くそれをお勧めすることができます。 –
と本!これは、Javaプログラマにとって本当に必要なものです。私はそれを読んでいます(私たちはそれを読んでいます) –