Java 识别出另一个方法抛出的错误

Java recognise an error being thrown from another method

第一段代码工作正常并且没有显示任何警告,因为 IDE 认识到如果我们不 return 我们肯定会抛出异常

private ResponseEntity<String> callService() throws CustomServiceException {
   // some code here...
   if(someCondition){
   // some code here...
   return responseVariable
}else{
CustomException customException = new CustomException(SERVICE_ERROR_MESSAGE, 500);
throw customException; 
}

除了从另一个方法抛出异常外,此代码执行完全相同的操作,但失败了,因为它在 IDE 上显示了一条警告,表明我们缺少 return 语句。

private ResponseEntity<String> callService() throws CustomServiceException {
   // some code here...
   if(someCondition){
   // some code here...
   return responseVariable
}else{
handleResponse(SERVICE_ERROR_MESSAGE, 500); 
          
}

这是句柄响应方式


    private void handleResponse(String message, int responseCode) throws CustomException {
       CustomException customException = new CustomException(message, responseCode);
       throw customException;
    }

我知道我可以在最后 return null 并且它永远不会到达那里但是这种不好的做法是否是像这样的事情的常见做法。

我认为这样会更清楚(并且会编译):

} else {
    throw buildException(SERVICE_ERROR_MESSAGE, 500);          
}

private CustomException buildException(String message, int responseCode) {
   return new CustomException(message, responseCode);
}

我认为,handleResponse这样的方法是没有必要的。
只需打印

throw new CustomException(message, responseCode);

而不是

handleResponse(message, responseCode);