java - 执行捕获异常中的前面步骤

标签 java exception

如果遇到一些特殊异常,我想重做这些步骤。

我不想再复制代码了。我怎样才能实现这个目标?

try{
//step1
//step2
//step3
}catch(specialException1 e){
    //redo step1
    //redo step2
    //redo step3
}

编辑:实际上,由于检查不同的条件,该异常是从另一个类引发的。当回到此类时,需要处理该问题并根据要求再次执行该步骤。例如 Oauth 已过期..因此需要再次刷新 token 。

最佳答案

首先,当其中一个步骤抛出异常时,您为什么要再次执行它们?

如果这是一个要求,那么您可以将这些步骤组合在一起,并将它们放入单独的方法中,并在 trycatch block 中调用该方法。

try{
    mySteps();
}catch(SpecialException se){
    mySteps();
}

private void mySteps() throws SpecialException{
     // Step 1
     // Step 2
     // Step 3
}

关于java - 执行捕获异常中的前面步骤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15290565/

相关文章:

Java栈队列获取可查看前台人数

java - 从另一个正在运行的 Java 应用程序捕获异常

导出可运行 jar 后出现 Java 异常

java - FaceDetector 无法解析为类型

java - 如何从 HashMap 中获取 5 个最高值?

java - 打乱数组列表后,如何在数组列表中跟踪正确答案?

javax.jms.JMSException : MQJMS2002: failed to get message from MQ queue

java - 将 "throw new exception"提取到方法中会导致编译错误

swift - “ fatal error :在展开可选值时意外发现nil”是什么意思?

java - 为什么要这么写一个迭代器呢?