对象赋值

来源:互联网 发布:qq强制视频软件 编辑:程序博客网 时间:2024/06/07 00:12

代码:

public void test() throws Exception {Student student1 = new Student(),student2 = new Student(),student3 = new Student();student1.setFk_Group_Id("1");student2.setFk_Group_Id("2");List<Student> list = new ArrayList<>();student3 = student1;list.add(student1);student1.setFk_Group_Id("11");System.out.println("list中的student1:"+list.get(0).getFk_Group_Id());System.out.println("student3:"+student3.getFk_Group_Id()+"/n重新赋值");student3.setFk_Group_Id("33");student3 = student2;System.out.println("list中的student1:"+list.get(0).getFk_Group_Id());System.out.println("student1:"+student1.getFk_Group_Id());System.out.println("student2:"+student2.getFk_Group_Id());System.out.println("student3:"+student3.getFk_Group_Id());}

结果:

list中的student1:11
student3:11/n重新赋值
list中的student1:33
student1:33
student2:2
student3:2


说明:

list.add(student1);则如果student1改了,list里面的student1也会改变,相当于共享一个对象引用。
student3 = student1;是student1和student3将共享一个对象引用,所以改了student3,student1也会
改变。
student3 = student2;则student2和student3将共享一个对象引用了

                                             
0 0