关于java中值传递还是引用传递

网上有很多示例,我比较懒,就不写示例了,写写自己的感受。

java中是值传递还是引用传递,我认为不是很重要,重要的是对于传递的理解。

方法中的参数分为两种 

  1. 基本数据类型
  2. 引用数据类型(类、接口、数组)

当形参为基本数据类型时,jvm将实参值即变量值拷贝一份赋值给形参,这时在方法中对于形参的任何操作都不会影响实参值;

当形参为引用数据类型时,jvm将实参对象即地址值拷贝一份给形参,这时形参和实参指向同一块heap中的内存,可以改变这块内存中的值,会对实参起影响;但是如果这时形参指向的内存改变了,则方法中对形参的操作不会影响实参。

可以看看 (牛_牛).NET 的文章http://www.cnblogs.com/SilentCode/p/4858790.html

原文地址:https://www.cnblogs.com/wangzix/p/7653275.html