セッターをバイパスして、オブジェクトの値を変更するには、悪い習慣ですか?

maksim2112:

つまり、私がget-メソッドを介してオブジェクトを取得します。そして、値を変更します。したがって、私は、このオブジェクトのコピーを作成しますが、元の値を変更しないでください。

との例List

getMyListFromPojo().addAll(additionalList);

このコードは、フィールドの値を変更しますmyListFromPojoこれは通常の練習ですか?

アンドリューTobilko:

セッターをバイパスして、オブジェクトの値を変更するには、悪い習慣ですか?

良いのAPIを使用すると、値を変更することはできません。getMyListFromPojo()外部から誰もが返された値を変更することはできないだろう、変更不可能なコレクションを返します。

一方、POJOクラスは非常に単純なクラスであると考えられます。私はPOJOのメソッドは、対応するフィールドへの参照よりも(コピーまたは不変オブジェクト、例えば)、より複雑な何かを返すことはほとんど見られません。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=227426&siteId=1