内部API的调用,各类case已抛异常的方式,还是返回值的方式处理

内部API的调用,各类case已抛异常的方式,还是返回值的方式处理

公司调用外部接口,会将错误的case已异常的方式抛出去供上层service,catch在相应处理。比如:

Result result = service.invoke();
if(result= 1){
    thow ServiceException();//构造自己封装的异常信息
}

大量的代码风格都是这样的,但是这样如果,错误的case已异常的方式抛给上层处理,如果上层处理该异常需要当时返回结果的一些信息,只能把当时的返回结果对象放进异常里,上层处理捕获异常,在从异常中拿到返回结果在处理,感觉很怪,大家都是怎么处理的或者怎么看待这类方式处理

阅读 2.2k
2 个回答

抛异常更直观,返回值方式需要上层开发人员理解该值属于异常数据

异常更方便统一处理,否则到处都要判断“是不是返回错误”

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题