我正在尝试识别 throw 语句出现在 catch block 内的情况。例如:
catch(MyException e){
throw e;
}
catch(Exception e){
throw new AnotherType();
}
是否可以访问每个 catch block 的显式开始/结束范围来迭代其单元,以检查是否存在 throw 语句?我知道如何做到这一点吗?
最佳答案
查看您的标签,我假设您正在使用 Soot。
您可以使用正在查看的 JimpleBody 的陷阱来确定语句是否位于 try/catch block 中。只需调用 body.getTraps() 即可。
关于java - 如何检测catch中是否出现了throw语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24764936/