由于我的Java概念很少,我有一个基本问题。
在这种情况下:
Device devA = new Device();
Device devB = new Device();
ArrayList<Device> allDev = new ArrayList();
allDev.add(devA);
allDev.add(devB);
如果之后我修改了devA
或devB
,那么allDev
也会相应修改吗?
答案 0 :(得分:5)
是。您将devA
和devB
的引用添加到ArrayList
。当您通过ArrayList
访问这些对象时,对这些对象的任何更改都会反映给他们。
答案 1 :(得分:2)
在Java中,当您创建一个新对象时,您将获得该对象的引用/句柄,并且只要您拥有该对象的句柄并对该对象进行更改,任何具有相同引用的人都将能够看到这些更改。
因此,您的问题的答案是肯定的,因为您实质上是在对同一个对象进行更改。