নীচের কোডটি বিবেচনা করুন:
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
, জাভা কেবলমাত্র রেফারেন্সটি অনুলিপি করে । সুতরাং, এর একটি নতুন প্রতিলিপি তৈরি dum
এবং এটি নির্ধারণ করার কোনও উপায় আছে dumtwo
কি?