这里是值引用还是指针引用?

13-06-07 runc
         

public class Dev2Test {

public static void main(String[] args) {

List<Obj> objs = new ArrayList<Obj>();

Obj Obj = new Obj();

Obj.setAge(10);

objs.add(Obj);

Obj.setAge(20);

Obj = null;

System.out.println(Obj +" /\\ "+objs.get(0).getAge()+" /\\ "+objs.get(0));

System.out.println();

}

}

class Obj{

private int age;

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

}

打印语句的地方,我觉得objs.get(0) 也应该是null才对,可以它却有实例,这应该是对象引用才对呀,搞不懂?

         

alexwoo
2013-07-07 22:31

这就好比你用手把一个东西放到了抽屉里,在你没放开手的时候,手里有,抽屉里也有;放手之后,手里没有了,但是抽屉还有。