2013-05-07 61 views
0

的使用我知道,對於一些年齡更大,經驗更豐富的VB.Net開發人員來說,這很容易,但我作爲一名開發人員開始學習,我想知道「Try」和「Catch」用於什麼。Try and Catch

+0

關於這個問題有很多的幫助和教程:http://bit.ly/16U4nBP – 2013-05-07 19:20:25

回答

0

它用於捕獲拋出的任何異常。如果try塊中的任何語句引發異常,則執行catch塊。如果存在與拋出的特定異常關聯的catch塊,則執行該塊。這裏是更詳細的doc

0

當你嘗試範圍由.NET檢測到任何異常,它會捕捉範圍,那麼你就可以在catch處理問題

2

trycatchfinallythrow是核心的異常處理框架,這是一種溝通代碼中「特殊」條件的方式 - 最明顯的錯誤。

如果您使用的是庫或框架,如果出現錯誤,他們有機會拋出異常,並且您的代碼有責任捕獲並處理該異常(記錄,顯示給用戶,嘗試修復條件再試,等等)

例(在C#-ish僞代碼,但是希望你會得到要點:

try { 
    doSomething(); 
} 
catch (Exception ex) { 
    log("doSomething() failed: " + ex.getMessage() + " - " + ex.getStackTrace()); 
} 

你會看到異常包含至少三種類型的有用信息:

  1. 它是例外類型。發生
  2. 中所含的異常 (通過拋出異常代碼設置)消息,並且
  3. 堆棧跟蹤, 它跟蹤調用堆棧到現場模塊,行號,和 錯誤。

希望能夠在您學習如何處理代碼中的異常的過程中啓動您。

+0

寫得很好,但我通常會退出我的例程,如果發生異常。只記錄異常通常是不夠的。在Java中,我會爲特定的方法創建一個新的,更通用的異常,並將舊異常作爲原因... – 2013-05-07 23:19:01

+0

我並不是真的想要壓倒原始海報的細節......如果他們問這個新手關於嘗試抓住的問題我不認爲他們會爲更詳細的任何事情做好準備...... – 2013-05-08 15:55:09

+0

是的,這總是有點棘手的事情。一方面你想保持簡單,另一方面顯示最佳實踐。我傾向於選擇後者,但我可以理解何時有人選擇前者(除非這是非常糟糕的做法......) – 2013-05-08 19:40:34