Рассмотрим код ниже:
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
?