什么是方法参数传递?
当我们需要在方法里面处理外部的数据的时候,我们可以通过参数来传递进来数据。
java的方法参数传递方式有两种,按值传递(参数的值)和引用传递(传递内存地址).
按值传递重要特点:传递的是值的拷贝,也就是说传递后就互不相关了。
传递的是值的引用,也就是说传递前和传递后都指向同一个引用(也就是同一个内存空间)。
class demo {
public static void main(String[] args) {
int x = 10;
print(x); // 调用传值
System.out.println(x); // 输出结果为10,值还是原来的
Person P = new Person(); // 创建对象
print(P);
System.out.println(P.name); // 此时值已经改变为 "你"
}
public static void print(int x) { // 基本属性类型,当做参数
x += 1; // 改变传递进来的值
System.out.println(x); // 输出结果11
}
public static void print(Person P) { //引用数据类型,当做参数
P.name = "你"; // 改变传递进来的值为你
System.out.println(P.name); // 输出对象里面的name,结果为你
}
}
class Person {
String name = "我"; //成员变量
}