Как скопировать объект в Java?JAVA

Программисты JAVA общаются здесь
Anonymous
Как скопировать объект в Java?

Сообщение Anonymous »

Рассмотрим приведенный ниже код:

Код: Выделить всё

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?

Подробнее здесь: https://stackoverflow.com/questions/869 ... ct-in-java

Вернуться в «JAVA»