아래 코드를 고려하십시오.
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
있습니까?