rem*_*rab 5 java break while-loop try-finally
我试图理解当我最终在while循环中使用时的机制.在下面的代码中.在最后的行打印和比休息时间.我期待代码不会到达finally块.或者,如果它到达finally块,那里就没有中断,所以while应该继续..任何人都可以解释这是如何工作的?
while(true){
System.out.println("in while");
try{
break;
}finally{
System.out.println("in finally");
}
}
System.out.println("after while");
Run Code Online (Sandbox Code Playgroud)
输出是
in while
in finally
after while
Run Code Online (Sandbox Code Playgroud)
尽管您break可以保证在尝试执行时总是最终执行。你不能停止进入最后的控制。
https://docs.oracle.com/javase/tutorial/essential/exceptions/finally.html
finally 块总是在 try 块退出时执行。这确保即使发生意外异常也能执行 finally 块。但 finally 不仅仅用于异常处理——它允许程序员避免通过 return、continue 或 break 意外绕过清理代码。
这种行为是有原因的。它帮助我们。
它允许程序员避免通过 return、continue 或 break 意外绕过清理代码。
| 归档时间: |
|
| 查看次数: |
2126 次 |
| 最近记录: |