各位好
我最近在練習java的時候突然想到一個問題
平常用function來取得一個object的attribute並儲存在一個local variable後
不論如何修改該local variable的數值 其存在於obeject裡的原值並不會改變
可是如果利用get()來取得一個list裡的object並存在local variable
再call任意該object的procedure來對attribute進行修改 其值會被永久改變
這是因為前例是將attribute的值複製並assign到local variable上
而後者是將local variable的pointer(?)指到list裡的object嗎?
不知道我理解的對不對 想找相關文章也不知道要搜尋什麼關鍵字
懇請版上大大開導