我有一个静态ArrayList<Profile>
我希望能够从我的应用中的任何活动访问。当我最终解决它时,我会这样做:
Profile profile = Globals.profiles.get(selected);
通常我理解当我从ArrayList
检索并反对并对其进行更改时,我正在更改ArrayList
中的对象。这是我想要的行为,但我想知道如果ArrayList
是静态的,它是否仍然成立。例如,如果我:
profile.setNewName("Mike");
名称是仅针对从静态ArrayList
派生的本地对象更改的,还是更新了ArrayList
中的对象?就像我说的那样,当ArrayList
不是静态时,这是预期的行为。
答案 0 :(得分:0)
static 表示该成员与该类关联,而不是与该类的具体实例关联。 在你的情况下,它意味着,ArrayList是你的Globals类的成员。
回答你的问题:由于您正在处理Object-References,因此您将直接更新(静态)ArrayList中的Object。
答案 1 :(得分:0)
您将获得与更新ArrayList的非静态实例
相同的行为我认为你需要研究Java中的静态意义