引用传递是将参数的引用(类似于C语言的指针)传递给被调方法,从而指向同一个内存地址,实现对值的共同修改。
ListStudy:将a的值给ChangeData类,让其修改数值。
package listspackage;
public class ListStudy {
int a=0;
public ListStudy(int i) {
this.a=i;
}
public static void main(String[] args) {
ListStudy li=new ListStudy(1);
System.out.println("before:"+li.a);
ChangeData ch=new ChangeData();
ch.change(li);
System.out.println("after:"+li.a);
}
}
ChangeData接收的是ListStudy的实例对象,从而修改值。
package listspackage;
public class ChangeData {
public void change(ListStudy temp) {
temp.a=100;
}
}