作者adrianshum (Alien)
看板java
标题Re: [问题] pass-by-value的小练习
时间Sun Jan 20 02:44:22 2008
※ 引述《zuda (组达)》之铭言:
: http://www.javaworld.com.tw/jute/post/print?bid=29&id=91946
: 找资料的时候看到这篇
: 关於fish作的那张图
: 明明从(4) second(v,i);就是一个pass-by-value(in java, always)
: 经过函数second的搅和之後,再回到main函数中的
: print(v.i) 不是应该是原本的15嘛??
: 麻烦各位大大解答orz
的确是 pass-by-value.
但被 pass 的不是 object instance 本身,
而是 reference(or pointer) to object.
即是,有一个指标指向 v, 然後,指标本身
被 copy 了一份传给 second. 当然,拷贝指
向的仍是那一个 instance.
你留意一下 second() 里面做了 v=val; 这
一句没有影响外面的 v, 就表明了上面所说
的.
Alien
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.103.235.35