我读了很多文章都说Java是按值传递的。但是我仍然不理解按值传递和引用传递之间的区别。我写了一个示例程序并执行它,结果如下...
public class PassByValue {
private int a;
private int b;
public PassByValue(int a, int b) {
this.a = a;
this.b = b;
}
public static int mul(int a, int b) {
int z = a * b;
System.out.println("The Value of Z inside mul: " + z);
return z;
}
public static void main(String args[]) {
int z = 100;
int x = 40;
int y = 20;
mul(x,y);
PassByValue pass = new PassByValue(x,y);
mul(pass.a,pass.b);
System.out.println("The Value of Z" + z);
}
}
执行
800
800 and
100
有人可以为我解释一下以下问题吗...
- 什么是传值(Pass By Value)的意思...
回答:这只是将变量中存储的数字或值传递给函数。我对吗还是错。
- 你如何说Java是传值(Pass By Value)的?
- 为什么Java是传值(Pass By Value),而不是传引用(Pass By Reference)?
- 上述程序是否展示了传值和传引用的示例...但是它仍然只通过传值来完成...我写了那个程序。