how many types of cloning?

Answer Posted / vineesh ktda

1. Difference between shallow copy and deep copy
. 2. How to implement shallow copy ?
3. How to mplement deep copy? .
A shallow copy creates an identical copy (new instance) of an object .If an object contains reference (pointer) type fields pointing to other objects then it copies only the references and not the objects to which they point. The result is two objects that point to the same contained object. That means the original object and cloned object maintains a seperate copy for value (primtive) type fields , references and shares common place for value of reference type fields. So in shallow copy , the changes in the value of reference type fields of cloned object also reflects in the original objects and vice versa. Shallow copy can be implemented by using the clone method of an Object class
A deep copy creates an identical copy of an object including the references and the objects they point to , as well as any references or objects contained within that and so on. In deep copy , the changes in the value of reference type fields of cloned object does not reflect in the original objects and vice versa.. There is no direct method for deep copy . But there are many ways to implement the deep copy.
1. You can use constructor of an object to create a second object with property values taken from the first object.
2. You can use clone method of an Object class to create a shallow copy of an object , and make it deep copy by assigning new objects whose values are the same as the original object to reference type fields. The DeepCopy method in the example illustrates this approach.
3. Use Serialization technique ie. Serialize the object , and then deserialize to a different object variable which implements deep copy.

Is This Answer Correct ?    0 Yes 1 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What do you understand by copy constructor in java?

492


How do I stop concurrentmodificationexception?

513


What is a function argument in java?

520


Can we write class inside a class in java?

553


Can a lock be acquired on a class in java programming?

536






What is a function easy definition?

529


What are the steps that are followed when two computers connect through tcp?

523


What is the purpose of declaring a variable as final?

486


State one difference between a template class and class template.

625


Mention some features of java?

541


How do I start learning java?

559


What is a Transient Object?

639


What is nested interface?

525


What is sizeof () operator?

573


how to deploy apache tomcat server to weblogic server in java

1599