A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 吉吉粥 中级黑马   /  2015-10-22 22:22  /  2850 人查看  /  49 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
   
游客,如果您要查看本帖隐藏内容请回复

点评

果然经典  发表于 2015-10-28 20:39

49 个回复

正序浏览
看你怎么理解;
1、确切来说,是值传递;但这个“值”又不是单纯的指“值”;
2、为什么这么说呢?因为,java所有的传递都是值传递。只不过,对于对象,传递的是 “地址值”,也就是所谓的引用;而对于基本类型,则直接将该基本类型的值传递
回复 使用道具 举报
给我看一眼内容!
回复 使用道具 举报
引用传递
回复 使用道具 举报
是值传递
回复 使用道具 举报
引用传递
回复 使用道具 举报
回复 使用道具 举报
我也来看看答案
回复 使用道具 举报
楼主所谓的值  其实是对象的哈希地址值吧
回复 使用道具 举报
我要看答案
回复 使用道具 举报
无论是基本类型作为参数传递,还是对象作为参数传递,实际上传递的都是值,只是值的的形式不同而已。


当用对象作为参数传递时,真正的值是放在堆内存中的,传递的是栈内存中的值,而栈内存中存放的是堆内存的地址,所以传递的就是堆内存的地址。
回复 使用道具 举报
Java是值传递,基本数据类型是数值传递,引用类型是地址值传递,但归根到底都是值传递,不用争了
回复 使用道具 举报
为嘛查看回帖还要回复
回复 使用道具 举报
java只有值传递. 参数传入的只是对象的引用. 方法中改变的只是改引用指向的对象的属性, 而该引用却未被改变.所以还是属于值传递.
回复 使用道具 举报
似乎很有道理
回复 使用道具 举报
xiao_D 高级黑马 2015-10-28 21:39:49
35#
顶贴是一种态度
回复 使用道具 举报
就是来看答案学习的,顺便问一句你的黑马币怎么是4个? 不是兑换之后最低要10个吗
回复 使用道具 举报
应该是值传递,传的是地址,
回复 使用道具 举报
不错,继续努力,哈尔滨校区获得政府支持,2期班有优惠哦。
回复 使用道具 举报
想看想看想看,重要的事情说三遍!
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 加入黑马