您的位置:首页 > 编程语言 > Java开发

Java中只有按值传递,没有按引用传递!

2014-09-23 11:16 211 查看
public class TempTest {
class A {
public int age = 0;

public A() {
}
}
private void test1(A a) {
A A1 = new A();// 新加的一行
A1.age = 20;
a=A1;
System.out.println("test1方法中的age=" + a.age);
}
public static void main(String args[]) {
TempTest t = new TempTest();
A a = t.new A();
a.age = 10;
t.test1(a);// 这里传递的参数a就是按引用传递
System.out.println("main方法中的age=" + a.age);
}
}

上面代码输出结果:

test1方法中的age=20

main方法中的age=10

1.先做个标记,日后在补。

  main 方法调用的 test1(a)的参数 a 与 main中 定义 A a = t.new A(); 两个a 只是名字相同 意义不同.

所以java中无论是基础类型还是,自定义的类型,参数的传递方式永远是值(引用)传递.

2.关于java中引用的概念参考:
http://blog.sina.com.cn/s/blog_7fb1495b01012sfn.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 引用