黑马程序员技术交流社区
标题:
求解惑
[打印本页]
作者:
呆呆呆
时间:
2013-12-9 21:45
标题:
求解惑
本帖最后由 呆呆呆 于 2013-12-10 11:13 编辑
想到一个问题:当一个对象被当做参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,
这里到底是值传递还是引用传递?帮忙啊
作者:
kongling
时间:
2013-12-9 22:05
java 基本类型是值传递, 类的对象为引用传递
作者:
翼展哈哈
时间:
2013-12-9 22:30
我认为是引用传递。值传递是把某一数据传递给某函数,由该函数来处理数据,并不对原有内存的数据进行操作;而这是把对象引用传递给某函数,由该函数来对堆内存中该对象实体的属性数据进行操作,对原有内存数据进行了操作。
希望可以帮到楼主。
作者:
高亮亮
时间:
2013-12-9 23:09
本帖最后由 高亮亮 于 2013-12-9 23:13 编辑
这应该是引用传递。因为对象是引用数据类型,传递的是堆内存中的对象地址,虽然在你说的方法被改变了属性,地址中的变量改变了,也就是值改变了,但跟值传递没有关系,这改变是那个方法的操作。
所以这不是值传递。值传递应该是基本数据类型,比如一个int类型的变量s,你给他赋了值。然后用s这个变量把它的实际参数也就是值传给某个方法进行操作,这就是值传递吧。
作者:
雪飘舞
时间:
2013-12-9 23:21
我觉得传递的应该是引用,因为类的对象是引用数据类型。
而传递值的话应该是基本数据类型了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2