考虑下面的代码:
DummyBean dum = new DummyBean();
dum.setDummy("foo");
System.out.println(dum.getDummy()); // prints 'foo'
DummyBean dumtwo = dum;
System.out.println(dumtwo.getDummy()); // prints 'foo'
dum.setDummy("bar");
System.out.println(dumtwo.getDummy()); // prints 'bar' but it should print 'foo'
因此,我想复制dum
到dumtwo
并且更改dum
而不影响dumtwo
。但是上面的代码没有这样做。当我更改时dum
,也会发生相同的更改dumtwo
。
我想,当我说时dumtwo = dum
,Java 仅复制参考。那么,有什么方法可以创建的新副本dum
并将其分配给dumtwo
?