public Long getLoginUserId(){
//如果未获取到返回null
return null;
}
//如果返回null将报NPE(NullPointerException)
long userId = service.getLoginUserId();
Long是可以自动拆箱为long的,但是,long却不能接收null,所以,在调用方法的时候,一定要注意用方法声明的返回类型进行接收,避免用基本类型接收引用类型的值,出现NPE。
拓展:
1、引用类型在进行比较时,要用equals,而不能用=,=比较的是对象地址,而equals才是比较值。
2、在调用任何引用类型变量的属性时,都要考虑是否非空,比如if(object != null && object.equals(objectx))~~~
NPE问题:
1、对象为null时,直接尝试调用对象的属性或方法
2、用基本类型变量接收null