Dot-Net

為什麼在 Try … Catch 中使用 finally

  • July 21, 2009

我看到FinallyinTry .. Catch將始終在執行 try catch 塊的任何部分之後執行。

跳過該Finally部分並在 try catch 塊之外執行它有什麼不同嗎?

範例 1,Try … Catch … Final … End Try

   Try
       'Do something
   Catch ex As Exception
       'Handle exception
   Finally
       'Do cleanup
   End Try

範例 2,Try … Catch … End Try … 做最後的事情

   Try
       'Do something
   Catch ex As Exception
       'Handle exception
   End Try
   'Do cleanup

是的,它是不同的。finally 將始終執行(除非程序崩潰)。如果函式在 try catch 塊內退出,或者在 try 或 catch 中拋出另一個錯誤,finally 仍將執行。如果不使用 finally 語句,您將無法獲得該功能。

引用自:https://stackoverflow.com/questions/1158667