有 f1、f2 和 f3 3 种方法。我想从f3返回到f1。
假设:
最初 f1 调用 f2
f2 调用 f3。
Try catch 块应该用在所有三个函数中。
情况是如果我在 f3 中遇到异常,那么我应该能够返回到 f1。
谢谢。
尝试..
void f1(){
try{
f2();
}catch(Exception er){}
system.out.println("Exception...");
}
void f2() throws Exception{
f3();
}
void f3() throws Exception{
//on some condition
throw new Exception("something failed");
}
catch(Exception e) {
return;
}
您可以在 f2 中捕获异常并添加 return,以便它将转到 f1。或者只是不捕获 f2 中的异常(只需在 f2 中添加 throws)并让它传播到 f1。
尝试
public void f1(){
f2();
// f3 failed. other code here
}
public void f2(){
try {
f3();
} catch (Exception e){
// Log your exception here
}
return;
}
public void f3(){
throw new Exception("Error:");
}
检查这样的事情
void f1() throws Exception {
try {
f2();
} catch (Exception e) {
throw new Exception("Exception Ocuured");
}
}
void f2() throws Exception {
try {
f3();
} catch (Exception e) {
throw new Exception("Exception Ocuured");
}
}
void f3() throws Exception {
try {
// Do Some work here
} catch (Exception e) {
f1();
}
}