Java中的参考资料.两个例子,有什么区别?

use*_*945 4 java pointers reference

我和我的朋友争吵了.

方法是:

public class Thing
{
    private Thing s;
    public void foo(Thing t)
    {
        s = t;
        t.s = this;
    }
}
Run Code Online (Sandbox Code Playgroud)

同样如下:

public class Thing
{
    private Thing s;
    public void foo(Thing t)
    {
        s = t;
        s.s = this;
    }
}
Run Code Online (Sandbox Code Playgroud)

我认为它是相同的,因为在两种情况下s都被设置为t,但他不同意

Pla*_*ure 6

它们是相同的,因为您将它们设置为相同的参考.

但是,如果你有两个用途,new那么引用会有所不同,那么你的朋友就是正确的.