Java:方法的参数是传值还是传引用

Posted Hershell Xie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java:方法的参数是传值还是传引用相关的知识,希望对你有一定的参考价值。

Java中方法的参数总是采用传值的方式。

下列方法欲实现对象的交换,但实际上是不能实现的。

public void swap(simpleClass a,simpleClass b){
    simpleClass temp=a;
    a=b;
    b=a;      
}

因为传入swap的参数实际是对象a和b的一个拷贝(假设为aa,bb)。

在方法中虽然交换了aa和bb,但方法结束后它们不再存在。

a和b仍然引用调用swap之前的对象。

-------------------------分割线 ------------------------------------

其实与c传指针是一个道理,

假设一个指针本身的地址为0xFFFFFF1A,指向的地址为(0x000001),

传入函数的是指针的值,即0x000001。

以上是关于Java:方法的参数是传值还是传引用的主要内容,如果未能解决你的问题,请参考以下文章

关于Java对象作为参数传递是传值还是传引用的问题

java传递参数是传值还是传引用

python函数传参是传值还是传引用?

Java到底是传值还是传引用

Java到底是传值还是传引用

python中给函数传参是传值还是传引用