Say its a simple java bean with some members and getter/setters. I create an instance of bean and call setters to set values. Now I want another copy of bean but with just one different property value. So the question is -
- Do I have to again instantiate the bean and call all setters again?
- Just call the setter for one property again and reuse the existing instance? Is this right way to do it?
If you want two instances you will need two instances. If you have one instance and reset one field, then you will lose the information about what that field was before.
How about giving your bean class a copy constructor? Then you can copy all the fields, and reset one only. Or even a clone() method call and a single field reset.
Beware: if any of those fields is a mutable reference type, then alteration to its state in one bean may be reflected in other beans with the same object in that field.