理解java中的值传递与“引用传递”

本文解析了Java中值传递和引用传递的概念,说明了Java实际上并没有引用传递,而是通过值传递来操作引用类型的副本,解释了String对象的特殊行为,并对比了基本数据类型在方法调用中的行为。

额。。。。java中其实没有引用传递

对于引用类型 ,在调用方法后,直接拷贝了引用的副本,但是它们指向了相同的堆地址,所以看起来像引用传递,但其实是值传递,只不过传递的引用的副本。

说一说为什么String这个对象类型。调用方法参数后,直接在栈内存(常量值)中拷贝了一份,所以在方法中对String的改变和原来的是无关的。另外可以通过new 的方法在堆中建立一个String对象

至于其他的基本数据类型,就不用多说了,因为在内存拷贝了一份副本,所以方法中对基本类型的操作和原来的当然是无关的。

转载于:https://www.cnblogs.com/zhongyimeng/p/10502912.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值