java中的TryCatch Block

时间:2014-04-21 07:29:52

标签: java core try-catch-finally

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中的一个面试问题

3 个答案:

答案 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异常处理它并不复杂。