【学习笔记】值传递和引用传递(待更新)
1.值传递
值传递(pass by value)是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。
package com.wzt.method;
public class Demo05 {
public static void main(String[] args) {
int a = 1;
System.out.println(a); //a的值为1
change(a); //把a 传入change方法中
System.out.println(a); //a的值依旧为1,只是把a传给change,change并没有返回
}
public static void change(int a){
a = 10;
}
}
2.引用传递
引用传递:是指在调用函数时,将实际参数的地址传递到函数中,那么在函数中对参数进行修改,将会影响到实际参数
package com.wzt.method;
//引用传递: 对象 ,本质还是值传递
public class Demo06 {
public static void main(String[] args) {
Person person = new Person();
System.out.println(person.name); //初始值为null
change(person);
System.out.println(person.name);
}
public static void change(Person person){
person.name = "张三"; //这个person.name 在修改Person类的属性name
}
}
class Person{
String name;
}