方法参数:JAVA程序中方法得到的是参数值的一个拷贝,方法是不能修改传递给他的参数的值
举个例子:
public static void TripleValue(double x){
x *= 3;
}
double percent = 10;
TripleValue(percent );
此时percent的值还是10;因为TripleValue在执行的过程中,x被初始化为percent的一个拷贝,x的值变为了30,但是percent的值还是10;
那怎么改变呢?
public static void TripleValue(Employee x){ //Employee为一个类
x.raiseSalary(100);
}
harry = new Employee();
TripleValue(harry );
此时就完成了参数的修改,因为x和harry同时引用的是Employee的对象,这里改变的是对象的参数的值
在举个关于引用对象的例子
public static void swap(Employee x, Employee y) //Employee为一个类
Employee temp = x;
x=y;
y=temp;
}
并不能完成对象的交换
总之一个方法是不能够修改一个基本数据类型的参数,但是对象引用作为参数就不同了,但还是一个方法也不能让对象参数引用一个新的对象。

1191

被折叠的 条评论
为什么被折叠?



