0

値型は、独自のエンティティを持たず、独自のライフサイクルを持たないものです。値型のもう1つのプロパティは、共有参照を持つことができないことを示しています。たとえば、Addressクラスのオブジェクトを指すインスタンス変数addressを持つクラスUserがある場合。2人のユーザーが同じアドレスを持っている場合でも、同じオブジェクトを指すことはできません。

これの理由は何ですか?

4

1 に答える 1

0

その理由は、アドレスの同じインスタンスを持つ 2 人のユーザーがいる場合、次のようにすると両方のユーザーのアドレスが変更され、明らかに望ましくないからです。

user1.getAddress().setStreet("new street");

両方のアドレスは、同じ値が含まれていても、データベース内の 2 つの異なる行のセルを表すため、異なるインスタンスである必要があります。

于 2012-06-06T10:35:07.557 に答える