我想在try/catch塊內放一個while循環。對於我的好奇心來說,當while循環退出時,try catch不會被執行。有些人可以解釋實際發生了什麼嗎? 我試圖谷歌,但無法找到任何細節。雖然循環裏面的嘗試塊
-1
A
回答
5
我假設你的代碼如下所示:
try
{
while (...)
{
// ...
}
}
catch (FooException ex)
{
// This only executes if a FooException is thrown.
}
finally
{
// This executes whether or not there is an exception.
}
catch塊,如果有異常時,纔會執行。終止塊通常執行是否拋出異常。所以你可能會發現你的finally塊實際上正在被執行。你可以通過在那裏放置一條導致輸出到控制檯的線來證明這一點。
但有些情況下,finally塊不運行。在這裏看到更多的細節:
1
只有當你的程序退出或者通過使用System.exit()
或者如果Error
或Throwable
被拋出(對比Exception
,將被抓),它可以發生。
嘗試以下操作:
public static void main(String[] args) {
try{
System.out.println("START!");
int i=0;
while(true){
i++;
if(i > 10){
System.exit(1);
}
}
}
catch (Exception e) {
// TODO: handle exception
}
finally{
System.out.println("this will not be printed!");
}
}
相關問題
- 1. 雖然循環裏面while循環
- 2. 雖然循環測試
- 3. PHP雖然循環調試
- 4. MFC雖然循環
- 5. Java雖然循環
- 6. 雖然循環/ java
- 7. 雖然循環python
- 8. JUnit測試雖然for循環
- 9. 雖然循環測試替代
- 10. appendChild雖然裏面for循環不能正常工作
- 11. 雖然python上的循環
- 12. PHP雖然循環在while循環中
- 13. PHP雖然在While循環中循環
- 14. Java雖然循環將不會循環
- 15. Objective C雖然循環不循環
- 16. 雖然循環將不會循環
- 17. 雖然循環不回到循環
- 18. 雖然循環陷入無限循環
- 19. 雖然循環進入無限循環
- 20. 雖然循環不保持循環
- 21. 雖然循環在while循環
- 22. 雖然循環在C
- 23. R:雖然循環輸入
- 24. 雖然循環陣列
- 25. PHP - 雖然循環更改
- 26. 雖然循環語句
- 27. 幫助PHP雖然循環
- 28. Javascript雖然循環整數
- 29. 雖然while循環錯誤
- 30. 雖然循環問題
請出示一些代碼。 – JohnB
根據JLS你所描述的不可能發生。請向我們展示演示此行爲的代碼。 (我的猜測是你誤解了一些東西......) –
@StephenC是的,它可以,看到我的答案。 – alfasin