maksim2112:
つまり、私がget-メソッドを介してオブジェクトを取得します。そして、値を変更します。したがって、私は、このオブジェクトのコピーを作成しますが、元の値を変更しないでください。
との例List
:
getMyListFromPojo().addAll(additionalList);
このコードは、フィールドの値を変更しますmyListFromPojo
!これは通常の練習ですか?
アンドリューTobilko:
セッターをバイパスして、オブジェクトの値を変更するには、悪い習慣ですか?
良いのAPIを使用すると、値を変更することはできません。getMyListFromPojo()
外部から誰もが返された値を変更することはできないだろう、変更不可能なコレクションを返します。
一方、POJOクラスは非常に単純なクラスであると考えられます。私はPOJOのメソッドは、対応するフィールドへの参照よりも(コピーまたは不変オブジェクト、例えば)、より複雑な何かを返すことはほとんど見られません。