求救:新手关于引用类型的问题
public class suiyi {
public static void main(String[] args) {
UserInfo uInfo=new UserInfo("faf","fffa","fafaf");
change(uInfo);
//if(true){
// uInfo=null;
// }
System.out.println(uInfo.getUnickName());//此时能输出,如果不调用方法改为手动清空对象就报异常
}
public static void change(UserInfo a){
a=null;
}
}
请教高手,为什么调用change(uInfo)后uInfo还存在,而在if中清了后就不存在了。求达人详细解释下这两者的区别,感激不尽