日期:2014-05-20  浏览次数:20731 次

谁能告诉我什么是传引用?最好举个简单的例子,本人刚学java!谢谢前辈了
谁能告诉我什么是传引用?最好举个简单的例子,本人刚学java!谢谢前辈了

------解决方案--------------------
Object a = new Object();
Object b = null;
b = a;
执行上面的代码后a和b指向同一块内存如下图
第一行:a----〉内存
new object()
第二行:b----〉null
第三行:a----〉内存
b----> new object()
不知道你是不是问这个,a中存放的是一个对象的内存首地址,a=b后b中存放着和a同样的内存地址,所以指向同一块内存,是同一个对象
------解决方案--------------------
public class Test {
public static void f(Test y){
System.out.println(y.toString());
}
public static void main(String args[]) {
Test t =new Test();
System.out.println(t.toString());
f(t);
}
}
这是书上的例子,t,y指向同一个对象,方法f中传的就是引用。
对于基本数据类型如int等使用传值策略,其它都是传引用。传引用时将引用复制一份传入方法,但是指向的还是原对象。在方法中可以将引用指向另一个对象,却不能改变原对象。