Java参数传递对象引用传递失效


产线问题排查,方法传递对象引用但返回后对象一直为空

 

原因:

null作为参数传递的时候,就不是引用传参了

Java参数引用传递之例外:null

众所周知的是,java中除基本类型外,参数都是引用传递。

但是,有一个例外,就是当实参为null时,其实,它依然是一个值传递。

也就是说,传参为null,不管函数体内用这个参数做了什么,跳出函数体后该参数依然是null

或者说,引用传递退化成为了值传递。

再进一步分析,其实是基本类型和指向null的非基本类型的指针,都在栈而非堆中,而引用传递的是堆内存地址。

类似的还有String类型。

 

参考:Java参数引用传递之例外:null


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM