Java:同一对象的多种表示

标签 java class object reference

我有一个像这样的 User.class:

public class User {
    private HashSet<Client> clients;
    ...
    public void addClient(Client c) {
        c.setParentUser(this);
        clients.add(c);
}

以及客户端类:

public class Client {
    private User parentUser;
    public void setParentUser(User u) {
        parentUser = u;
    }
    ...
}

我的问题是,在c.setParentUser(this)处,我的目的是有一个指向持有客户端的用户的“指针”。

所以我的问题是:c.setParentUser(this)只是在客户端中存储一个引用,还是会创建一个与this完全相同的新对象>(用户)?

最佳答案

它存储一个引用,如 C/C++ 指针。变量 parentUser 引用与 this 相同的对象(在 User 类中)。

如果您想制作副本,则需要明确说明。

关于Java:同一对象的多种表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15246227/

相关文章:

java - 是否可以设置 ProgressIndicator 的样式?

Java enum.valueOf(String) 和 enum.class

python - TypeError - Python 中的类

jquery - 如何为 jQuery 对象分配属性?

c++ - 在 C++ 中使用访问器从对象返回数组

java - 生成数字对的随机列表时避免重复的方法无法正常工作

java - AWS DynamoDB 运行时异常

java - 扫描仪输入需要两次,而只需要一次

python - 为什么父类(super class)属性在当前类的命名空间中不可用?

java - 如何从内部方法向 ArrayList 添加值?