我將一個對象克隆到另一個對象中,然後試圖只更改新對象中的兩個參數。但最初的對象仍然在變化。我只是希望兩個副本應該分開。這裏是我的代碼在java中完全覆蓋克隆對象
Subgroup sg1 = new Subgroup();
sg1.setFname("Vali");
sg1.setMname("Sheik");
sg1.setLname("Sha");
Group g1 = new Group();
g1.setSg(sg1);
try {
Group g2 = (Group) g1.clone();
Subgroup sg1 = g2.getSg();
sg2.setFname("parvez");
sg2.setMname("syed");
sg2.setLname("khan");
g2.setSg(sg2);
System.out.println(g1);
System.out.println(g2);
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
這兩種情況它只打印第一個對象。在組類
克隆方法
Protected Object clone() throws CloneNotSupportedException {
return super.clone();
}
請添加你的類的源代碼(組和子組) – 2016-09-26 05:19:11
請顯示你的克隆方法 – Jens
延斯,我已經更新 – Syed