特别注意:java只有值传递没有引用传递。
一、值传递和引用传递的定义
- 值传递(pass by value)是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。
- 引用传递(pass by reference)是指在调用函数时将实际参数的地址直接传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。
这里牢记值传递中将实际参数复制一份。
然后就是对于参数类型:值类型 和 引用类型。
结合起来理解就是:值类型传递,java是将其值内容复制一份给形参;对于引用类型传递,java是将其地址复制一份给形参。
二、值传递和引用传递的图例
这里要特别注意参数类型为String的。它是一个特殊的类型的引用变量(不可变字符串:编译器可让字符串共享,即将各种字符串存放于公共存储池中,字符串变量是指向其中相应位置)。