Java对象问题

时间:2013-11-28 02:20:47

标签: java object

我怀疑是否有函数返回已存在的类中保存的对象并执行以下操作:

    Class System{

    ...
    Vector<User> clients;
    ...
    }


    //In another class ...
    User c = getOwner(String username);
    c.add_value(balance);


   //Trasaction class
User owner;
   ....

public User getOwner() {
    return owner;
}

它是否会更改我返回的对象的值以及它在另一个类中的保留值?或者它是否制作了该对象的副本?如果是这样,我怎样才能使它改变对象而不制作该对象的副本?

1 个答案:

答案 0 :(得分:0)

首先,我认为你的意思是

User c = getOwner(username);

现在,

public User getOwner() {
    return owner;
}

在java中,对象的引用按值传递。所以,如果你这样做

c.add_value(balance);

是的,对象将被更改。