• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

clone an object

 
rucha kulkarni
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

How do I clone an object in java without using clone method?

Thanks
 
Swastik Dey
Rancher
Posts: 1603
5
Android Java Java ME
 
Campbell Ritchie
Sheriff
Posts: 48652
56
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Useful site, but it misses one thing out. It implies the return type of clone() is Object. Since Java5, it has been possible to use covariant return types, so you can have a clone() method in class Foo which returns a Foo reference.
The serialisation solution is a well‑known cheat, which does work, but only if the class implements Serializable. It also has slower performance.
Better solutions: If you want to copy your object, you can give the class a copy() method (rather like this, or a copy constructor, or a factory method which copies an object.
Better still, make your class immutable. Then you can forget all about cloning, copying, etc, because that will cease to be a problem.
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic