try {
statement 1 // executing successfully
statement 2 // Exception Occured
statement 3 // Skip Execution
} catch(Exception e) {
e.printstacktrace();
} finally {
statement 4
}
上面的代码是trycatch block的基础。如果st2失败,那么st3将执行。那么在st2失败后我们可以执行st3吗?
java中的一个面试问题答案 0 :(得分:2)
Surround语句2与另一个try catch块。在这种情况下,即使在statemnt 2已经结束之后,语句3也将执行。如果您希望语句3仅在statemnt 2失败后执行。将statemnt 3移动到catch块
答案 1 :(得分:0)
不是不会。 Java逐行读取代码。因此,当s2失败时,它将进入catch块。无论如何,无论如何都会执行s4。所以你可以把s3带到最后阻止它执行的地方,即使s2失败了。
try{
statement 1 // executing successfully
statement 2 // Exception Occured
}catch(Exception e){
e.printstacktrace();
}finally{
statement 3 // Skip Execution
statement 4
}
S3将在上面的例子中执行。
try{
statement 1 // executing successfully
try{
statement 2 // Exception Occured
}catch(Exception e){
}
statement 3 // Skip Execution
}catch(Exception e){
e.printstacktrace();
}finally{
statement 4
}
S3也将在上面的例子中执行。
答案 2 :(得分:0)
请仔细阅读java异常处理它并不复杂。