作者:
noiz07 (noiz07)
2017-01-21 14:05:11書上有一題是
In java, pass-by-value is used with:
(A)objects
(B)primitive types
(C)arrays
(D)all of the above
解答是寫A ,但我覺得是D
Google 一下是說java 都是pass by value 像是array時是傳 reference 的value,所以想
問一下版上的大家這題應該選哪個?
謝謝
作者:
ssccg (23)
2017-01-21 14:12:00D
作者: KekeMonster (KekeMonster) 2017-01-21 15:23:00
B
如果是A的話那primitive types算什麼?
作者: KekeMonster (KekeMonster) 2017-01-21 19:52:00
我錯了,是D...
作者:
awesen (awesen)
2017-01-21 21:30:00哪本書...
作者: marsyang1 (Mars) 2017-01-22 08:40:00
D
嚴格來說是B. Java 中不能傳Objects(和Arrays). 傳的是Object *Reference*
作者:
ssccg (23)
2017-01-23 10:10:00傳的是Object Reference "Value"以變數的角度來說,不管變數type是primitive還是object傳的就是變數的value,used with可解釋成當參數的type是...call by xxx是從argument和parameter的關係看,argument是個pointer、指向的另外那塊位址本來就跟這段無關了
作者: longlongint (華哥爾) 2017-01-24 00:22:00
為了證照 ~(?
我意思是傳的是Object Reference, 而傳的方法是By Value.嚴格來說 Java 的variable 的type 不是Object, 而只是Reference (aka Pointer)既然variable/parameter/argument 不能是object, 那自然不會"use with" 了