对于java的参数传递的总结

一:参数传递的类型

 

参数传递有两种,一种是值传递,一种是引用传递。值传递是直接传递值,也就是把实际参数的值复制一份,再传到方法中,而引用传递则是直接传递实际参数的引用地址(不复制副本)

首先下个结论:java中都是值传递

二:java中的方法参数类型

1.基本数据类型:直接传递参数的值到方法的形参中(复制一份),无论在方法中如何修改该入参,原来的实际参数都不会改变

2.引用类型:复制对象的参数引用,然后传给方法的形参,虽然传入的是对象的引用副本,但是该引用与实参引用指向的是同一个地址,所以在方法内部改变该地址的对象的属性的话,方法外部的实参属性也会被改变。注意:由于依然是副本,即值传递,即使在方法内部改变地址的引用,外部的实参的地址引用也不会改变。就好比是复制了一个参数引用,与实际参数引用指向的是同一个对象,方法内若改变形参的地址引用,只是改变了复制的那个副本而已,并没有改变实参的地址引用

三:总结

1.如果形参是基本数据类型,那么不会改变实参

2.如果形参是引用类型,可以改变实参指向的对象的内部状态,如属性,但是无法改变实参的地址指向

最后:附上后端技术交流圈,欢迎各位大佬入圈交流技术......V:ff1341658(先添加好友后拉群,请备注:小白不黑)

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值