黑马程序员技术交流社区
标题:
到底 Java 是如何传递参数的?是by value或by reference?
[打印本页]
作者:
myzhang
时间:
2014-9-9 09:28
标题:
到底 Java 是如何传递参数的?是by value或by reference?
有点迷惑,到底 Java 是如何传递参数的?是by value或by reference?
作者:
kj1989
时间:
2014-9-9 11:30
基础数据类型(int,char,……)传值,对象类型(Object,数组,容器……)传引用。
如果理解成java方法参数都是传值的,也行,只是理解方式不同而已。引用本身也是值(对象地址)。
传值方式:传递的是值的副本。方法中对副本的修改,不会影响到调用方。
传引用方式:传递的是引用的副本。此时,形参和实参指向同一个内存地址。对引用副本所指向的对象的修改,如修改对象属性、容器内容等,会影响到调用方。对引用副本本身(对象地址)的修改,如设置为null,重新指向其他对象,不会影响到调用方。
只要知道传引用时,也是传递的引用的副本,就比较容易理解了。
作者:
wenjd0000
时间:
2014-9-9 12:24
:dizzy:钻的这么深
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2