一、值传递
public class test_01 {
public static void main(String[] args) {
int i=10;
add(i);
System.out.println("main--->"+i);
}
public static void add(int i) {
i++;
System.out.println("add--->"+i);
}
}
内存图: Java语言当中涉及参数传递问题,实际上是传递变量中保存的具体值。
二、地址传递
public class test_02 {
public static void main(String[] args) {
User u=new User(20);
add(u);
System.out.println("main--->"+u.age);
}
public static void add(User u) {
u.age++;
System.out.println("add--->"+u.age);
}
}
class User {
int age;
public User(int i) {
age=i;
}
}
方法调用的时候:将变量中的“值”传递过去
|