what is the use of clone() in real time scenario?
Answers were Sorted based on User's Feedback
Answer / aravindareddy
Clone() method is used to create and return copy of the
object,The Cloneable interface defines a method called Clone
(), which can be used to clone an object in your java
program.The reason for making a copy of an object is if
you’re going to modify that object and you don’t want to
modify the caller’s object. If you decide that you want to
make a local copy, you simply use the clone() method to
perform the operation.
| Is This Answer Correct ? | 28 Yes | 7 No |
Answer / aravinda reddy
Further to above a small update, clone will peform shallow
copy.Please execute below example and check the output.
public class CloneExamples {
public static void main(String[] args) {
ArrayList al = new ArrayList();
for(int i = 0; i < 10; i++ )
al.add(new Int(i));
System.out.println("al: " + al);
ArrayList al1 = (ArrayList)al.clone();
// Increment all al1's elements:
for(Iterator e = al1.iterator(); e.hasNext
(); )
((Int)e.next()).increment();
// See if it changed al's elements:
System.out.println("al: " + al);
System.out.println("al1: " + al1);
}
}
class Int {
private int i;
public Int(int ii) { i = ii; }
public void increment() { i++; }
public String toString() {
return Integer.toString(i);
}
}
o/p:
al: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
al: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
al1: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
the old ArrayList and the cloned ArrayList are aliased to
the same objects
| Is This Answer Correct ? | 6 Yes | 8 No |
What is the reason behind using constructors and destructors?
Give few difference between constructor and method?
What is lambda in java?
What comes to mind when someone mentions a shallow copy in java?
Why hashmap is used in java?
Can a source file contain more than one class declaration?
Why super is first line in java?
What is the use of toarray () in java?
What is meant by class loader? How many types are there? When will we use them?
Implement a stack with push (), pop() and min() in O(1) time.
why java is better then .net?
What is null statement?