如果参数是基本类型,传递的是基本类型的字面量值的拷贝。无论你怎么改变这个拷贝,原值是不会变得。
如果参数是引用类型,传递的是该参量所引用的对象在堆中地址值的拷贝,是把对象在内存中的地址拷贝了一份传给了参数
为什么java中只有值传递?
参数在程序语言中分为形式参数和实际参数
形式参数:是在定义函数名和函数体的时候使用的参数,目的是用来接受调用该函数时传入的参数。
实际参数:在调用有参函数时,主调函数和被调函数之间有数据传递关系。在主调函数中调用一个函数时,函数名后面括号中的参数成为“实际函数”。
实际参数是调用有参方法的时候真正传递的内容,而形式参数是用与接受实参内容的参数。
Java的引用类型是在传递参数的过程中实际是将引用在栈上拷贝一份,然后传递形参,所以传递的是引用的拷贝不是引用本身