Согласно комментариям, очевидно, у моего предложенного решения есть проблемы.
Таким образом, следуйте другим советам по созданию нового экземпляра и копированию требуемых свойств. Или создайте легкий объект данных, который содержит нужные вам свойства. В любом случае, я считаю, что вам нужно 2 экземпляра, чтобы делать то, что вы хотите.
Я предлагаю вам реализовать метод клонирования, который создает новый экземпляр.
http://download.oracle.com/javase/1,5,0/docs/api/java/lang/Cloneable.html
Проблема здесь в том, что вы передали экземпляр в свой класс R1, но это все тот же единственный экземпляр, поэтому изменения в нем повлияют на все остальное. Таким образом, реализация метода клонирования позволит вам легко создать копию вашего экземпляра, которую можно использовать в вашем классе R1, и в то же время позволить вам вносить дальнейшие изменения в свой оригинал.
В вашем классе R1,
public R1(ObjectClass obj) {
//this.obj = obj;
this.obj = obj.clone();
}
P.S. Вы должны реализовать этот метод самостоятельно. Он не просто автоматически даст вам глубокую копию.