Person クラスがあり、名前、年齢、性別、体重などのユーザーからデータを入力したい (私は Scanner クラスを使用したい)。
クラス Person のオブジェクトを作成するには、入力データをどのように処理すればよいですか? 次のオプションを検討していますが、どれを使用するかを知りたいです。
1) START で引数なしのコンストラクターを使用して Person オブジェクトを作成し、次に - 1 つのデータ (名など) を入力します - Person の SETTER を使用して、このデータを前述のオブジェクトに設定します - 他の部分について手順を繰り返しますdata 最後にオブジェクトを PersonDAO に送信します
欠点: Person クラスに引数なしのコンストラクターを含めると、プログラムの別の場所に「空の」無効な Person オブジェクトを作成できるようになります。(それについて本当に心配する必要があるかどうかはよくわかりません。 )
2) END にマルチパラメーター コンストラクターを持つ Person オブジェクトを作成します。- 最初にデータを 1 つずつ入力し、それらを配列/リスト/変数に保持します。- 入力が完了したら、配列/リスト/変数からデータの断片を抽出し、それらを Person のコンストラクター (多くのパラメーターを持つコンストラクター) に入れて Person オブジェクトを作成します。最後に、オブジェクトを PersonDAO に送信します。
欠点: 引数の 1 つが無効な場合、それについて知るのはかなり遅くなります。全体の手順はより複雑に見えます。
その場合、どのオプションが優れていますか?入力データをDAOに送信する前に、別の方法でデータを処理する方法があるかもしれません...
そして、DAO はオブジェクトの GETTERS を使用してデータベースにレコードを作成するのでしょうか?