引用数据类型是引用类型(call by reference)
基本数据类型是值传递(call by value)
值传递不可以改变原变量的内容和地址:原因是Java方法的形参都是传递原变量的副本,在方法中改变的是副本的值。
引用传递不可以改变原变量的地址,但是可以改变原变量的内容:原因是当副本的引用改变时,原变量的引用并没有发生变化,当副本改变内容时,由于副本引用指向的是原变量的地址空间,所以,原变量的内容发生变化。
结论:
- 值传递不可以改变原变量的内容好地址。
- 引用传递不可以改变原变量的地址,但可以改变原变量的内容。