相关疑难解决方法(0)

是否有一个空指针异常代码气味?

最近我的一个同事用一些代码写了一个代码来捕获整个方法的空指针异常,然后返回一个结果.我指出了空指针有多种原因,所以我们将其改为对一个结果进行防御性检查.

但是,捕获NullPointerException似乎对我来说不对.在我看来,Null指针异常是错误代码的结果,而不是系统中的预期异常.

是否有任何情况下捕获空指针异常是有意义的?

java nullpointerexception

57
推荐指数
4
解决办法
2万
查看次数

是否可以通过编程方式抛出NullPointerException?

当有后置条件时,方法的返回值不能为空,可以做什么?

我可以

assert returnValue != null : "Not acceptable null value";
Run Code Online (Sandbox Code Playgroud)

断言可以关闭!

所以可以这样做

if(returnValue==null)
      {
           throw new NullPointerException("return value is null at method AAA");
      }
Run Code Online (Sandbox Code Playgroud)

或者,对于这样的条件,使用用户定义的异常(如NullReturnValueException)会更好吗?

java exception-handling nullpointerexception throw

44
推荐指数
7
解决办法
7万
查看次数