为了账号安全,请及时绑定邮箱和手机立即绑定

JAVA 关于对象引用的问题

JAVA 关于对象引用的问题

HUH函数 2018-12-06 16:07:04
Sup s1=new Sup(); s1.setId(1); List<Sup> s=new ArrayList<>(); s.add(s1); System.out.println(s); s1=new Sup(); s1.setId(111); System.out.println(s); 这段代码为什么两次输出的结果会是一样的?ID都是1,为什么第二次输出的不是111?List中存储的不是引用吗?
查看完整描述

1 回答

?
撒科打诨

TA贡献1934条经验 获得超2个赞

Java中虽然传的是引用,但是用的时候是直接操作的原对象。你虽然是给的LIST引用,但是LIST会通过引用把原对象拿到,之后你给的那个引用跟他没有关系了。

举个栗子:

你拿了一个laser(汉字不让发啊)(引用)在墙上刻了一个字(对象),然后用LASER指给LIST让它记下来,

然后!你用LASER在墙上别处刻了另一个字,现在已经有两个字了,新的还没有告诉LIST,所以LIST不知道啊~

除非你把LASER指回去,改原来那个字~

查看完整回答
反对 回复 2018-12-16
  • 1 回答
  • 0 关注
  • 580 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号