Я немного новичок в Java и ее концепции передачи по значению, и я все еще прихожу к соглашению с ней.У меня есть следующий код и вопросы относительно этого кода.
Вопрос: 1) Будет ли мой текущий код делать глубокую копию?или мне также придется сделать глубокую копию для класса A?
Вопрос: 2) будет ли глубокая копия предотвращать изменения в моем para1, которые я передаю классам?
Спасибо зазаранее за вашу помощь.
С уважением, Атул.
public class A {
private Double value;
}
public class I {
private Hashtable<Long, A> f2 = null;
I(I oldI){
f2 = new Hastable<Long, A>(oldI);
}
}
public class k {
private HashMap<Long, I > ob1 = null;
private HashMap<Long, I> ob2 = null;
k(Vector<I> para1){
ob1 = new HashMap<Long, I >();
for(int i=0; i < para1.size(); i++){
/* Question: 1 */
ob1.put((long) i, new I(para1.get(i)));
}
}
}