参数传递传的是什么?2018-03-17

方法上参数的传递,如果参数是引用类型的对象,传递的是地址;

如果参数是基本数据类型,传递的是值。

变量的赋值,传的是引用。

定义方法是传递的参数是形参,调用方法是传递的是实参。



Person.java

packagejava的传值传地址;

public class Person {

private String name;

public Person() {

super();

}

public Person(String name) {

super();

this.name = name;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}

Test.java

package java的传值传地址;

public class Test {

public static void test(Person p){

Person p2 = new Person("小军");

//在方法中:形参传递方法的其实是对象的地址

p.setName("小明");

//赋值传递的其实是对象的引用

p = p2;

System.out.println(p.getName());

}

public static void test(int a){

System.out.println(a);

a =20;

System.out.println(a);

}

public static void main(String[] args) {

int a =10;

Person p = new Person();

test(p);

System.out.println("p:"+p.getName());

//测试常量

test(a);

System.out.println(a);

}

}

运行结果如下:

你可能感兴趣的:(参数传递传的是什么?2018-03-17)