do you know whether java's built-in "clone" would successfully handle this case?  Because if so, I think your suggestion is good.  If it would require me to implement a clone method for the class.... then I still agree with the spirit of your suggestion but it feels like more effort than it's worth?