弄懂Java为何只有值传递

最近有同学问我关于Java中值传递与引用传递的问题,在此小结一下

值传递是指在函数调用时将实参内容复制一份传递给形参,这样在函数中改变该参数不会对原参数产生影响。

引用传递是指将对象地址的引用传递给该函数,这样在函数中改变该参数会对原参数产生影响。

两者的主要区别在于:是否将实参内容复制一份传递给了形参!

举个最简单的例子:

public class test { public static void main(String[] args) { int num = 10; changeNum(num); System.out.println(num); } public static void changeNum(int num){ System.out.println(num); num = 20; System.out.println(num); } }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyzswd.html