次の図では、 がpを指していpersonます。
pという名前の関数への参照として渡されcallFunctionます。に変更を加えるpと、 にも反映されpersonますか? 説明してください。
渡された引数は、元の変数の参照値であることを理解しています(そう願っています!)。しかし、私はそれ以上考えることができません。

次の図では、 がpを指していpersonます。
pという名前の関数への参照として渡されcallFunctionます。に変更を加えるpと、 にも反映されpersonますか? 説明してください。
渡された引数は、元の変数の参照値であることを理解しています(そう願っています!)。しかし、私はそれ以上考えることができません。

などの詳細を変更するpと反映されます
// Nothing done to p before this
p.changeName("Not Sanika Anymore"); // This will be reflected as both point to the same object as references are the same
新しい人を作成して割り当てると、それはp機能しません
// New Person for p
p = new Person("New Sanika"); // now this p is pointing to the newly created object's reference
p.changeName("Not Sanika Anymore"); // This won't be reflected
これは、Java が純粋 に値渡しであるためです。オブジェクトの参照を値として に渡していますcallFunction()。
Eng.Fouadによるこの回答は、この概念を非常に良い方法で説明しています。
はい、両方の参照が同じ Person オブジェクトを指しているためです。参照を使用して属性を変更すると、同じオブジェクトが更新されます。