PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
java
[問題] 傳物件問題
作者:
ptt0720
(濕濕)
2017-12-24 03:02:26
大家都知道java傳物件是傳參考
但是剛才遇到一個問題
我把某個物件c1傳到某個方法A 在A裡面把另外一個同型態的物件assignment給c1(不是物件成員 是整個物件)
但是在原本呼叫A的方法中c1還是c1
物件的成員可以這樣子assignment
但是今天才知道整個物件不能這樣子assignment
想請問有人知道在java內部是如何運作的嗎
(怕觀念有誤馬上用手機問一下 如果不明白的話我會在補上code)
作者:
ssccg
(23)
2017-12-24 03:23:00
java傳物件不是傳參考,是複製一份參考(在C/C++中叫指標的)方法中的變數(不論數值類型還是參考類型)怎麼改都不影響呼叫的地方
作者:
ptt0720
(濕濕)
2017-12-24 03:39:00
但是我在方法中改物件的成員變數 實際上也被改變了
作者:
ssccg
(23)
2017-12-24 03:56:00
物件的成員變數是物件的成員變數,不是方法的區域變數
作者:
jej
(晃奶大馬桶)
2017-12-24 06:43:00
http://javadude.com/articles/passbyvalue.htm
你給的那個已經是另一個instance
作者:
pttworld
(批踢踢世界)
2017-12-24 07:38:00
想像手中本來有個箭頭指某一物件,換指另一物件。
作者:
LPH66
(-6.2598534e+18f)
2017-12-24 12:48:00
接樓上的比喻, 函式外的箭頭跟函式內的箭頭不是同一個
作者:
ptt0720
(濕濕)
2017-12-26 02:26:00
懂了 謝謝各位
繼續閱讀
[問題]Java的modbus應用
simpletina
[問題] (新手問題)瘋狂程設
aussiemorris
[問題] OCEJWCD 推薦考試用書
storyj14
[問題] 一個java cmd 語法用法的問題
NCKUFatPork
[出售] 深入淺出 Java 第二版(已售出)
wifeisblind
Re: 搞懂變數、物件、參考。(Re: new 語法 …
ayayay2288
Re: [問題] Lambda Functional參數問題
JustinHere
[問題] Lambda Functional參數問題
kyleJ
[問題] SpringMVC 的優勢
fgood
[問題] windows10 CMD指令路徑
nohara001
Links
booklink
Contact Us: admin [ a t ] ucptt.com