gpt4 book ai didi

java - 捕获异常后返回 null 错误的设计

转载 作者:IT老高 更新时间:2023-10-28 21:06:54 33 4
gpt4 key购买 nike

我总是遇到同样的问题,当一个异常被一个具有非 void 返回值的函数捕获时,我不知道要返回什么。下面的代码片段说明了我的问题。

public Object getObject(){
try{
...
return object;
}
catch(Exception e){
//I have to return something here but what??
return null; // is this a bad design??
}
}

所以我的问题是:

  • return null 是不是糟糕的设计?
  • 如果是这样,什么是更清洁的解决方案??

谢谢。

最佳答案

如果你真的无法处理它,我会说不要捕获异常。并且日志记录不被视为处理错误。最好通过抛出异常将其冒泡给有能力的人。

如果你必须返回一个值,而 null 是唯一明智的做法,那没有任何问题。只需将其记录下来,并向用户明确说明应该做什么。进行单元测试,显示抛出的异常,以便开发人员在您看到接受的习惯用语之后出现。它还会进行测试以确保您的代码在应该抛出异常时抛出异常。

关于java - 捕获异常后返回 null 错误的设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2168397/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com