Confused, использует ли java вызов по значению или вызов по ссылке, когда передается ссылка на объект? [Дубликат]
На этот вопрос уже есть ответ:
Является ли Java «передачей по ссылке» или «передачей по значению»? 78 ответовpublic class program1{
public static void main(String args[]){
java.util.Vector vc=new java.util.Vector();
vc.add("111");
vc.add("222");
functioncall(vc);
vc.add("333");
System.out.println(vc);
}
public static void functioncall(java.util.Vector vc){
vc=null;
}
}
Выход вышеуказанной программы [111,222,333]. но, когда я запускаю следующую программу, получается [333]. Смущенный, когда мы передаем ссылку, как она работает, будь то вызов по значению или вызов по ссылке? и почем
public class program1{
public static void main(String args[]){
java.util.Vector vc=new java.util.Vector();
vc.add("111");
vc.add("222");
functioncall(vc);
vc.add("333");
System.out.println(vc);
}
public static void functioncall(java.util.Vector vc){
vc.removeAllElements();
}
}