如果我有2个物体
Foo foo;
Foo bar = foo;
他们最初都指向null。
如果foo初始化
foo = new Foo();
bar引用null,但我想要它 与foo绑定。
所以每次改变foo引用 影响条形参考是相同的。
有没有办法自动完成 让bar指向相同的地址 foo,
即使它改变了,或者我有 手动调用它?
foo = new Foo();
bar = foo;
答案 0 :(得分:1)
foo
和bar
都不是真正的对象,而是对象的引用。
在您的初始声明中,您将两者都设置为未定义,或者更准确地foo
未定义,并且您将bar
设置为相同的值。但是,即使您已初始化foo
,答案也是一样的。
当您将foo
的值设置为新对象(new Foo
)时,您仍然未定义bar
。
所以答案是肯定的,你必须手动完成。
答案 1 :(得分:1)
您可以通过创建类似指针类的方法来使用解决方法。
Pointer<Foo> foo = Pointer.nullPointer(); //target=null
Pointer<Foo> bar = foo; //bar now also "points" to null
foo.setTarget(new Foo()); //now BOTH have the new object as the target
你可以像这样使用它:
$().alert('close')
答案 2 :(得分:0)
Java是按值传递,而不是按引用传递。 bar的引用不应与foo相同