Java值传递

1,140 阅读1分钟

java中的方法是不能独立存在的,调用方法必须使用类或对象。如果声明方法的时候需要传递参数,也就是形参,则调用的时候必须指定这些形参指定参数值。调用方法的时候实际传给形参的值叫实参。

在java中参数传递的方式只有一种,就是值传递。

对于基本数据类型,在调用方法传递参数时,相同与把实参在该方法的栈中复制了一份;所谓的值传递,就是将实际参数值得副本(复制品)传入方法内,而参数本身不会受影响。

对于引用类型,在我们的主方法栈中存储的不是对象本身,对象本身是存储在堆中的,在栈中存储的变量时对象在堆中的地址,也就是一个指针。所以在传递引用类型的参数时,其实就在把对象的地址复制了一份给到调用的方法,存储在方法的栈中,所以主方法和调用的方法中操作的对象是同一个。