異常是在程序執行過程中出現的問題。異常是對異常情況的響應。同時,一個程序運行,如dividingetcFirst,讓我們updatereadexecute命令和檢索數據,存儲連接組成,當你聲明itYouMicrosoft文檔可以獲得一個當你傳遞參數時引用etczero。
異常提供了一種將控製從程序的一部分轉移到另一部分的方法。VB。網exception handling is built upon four keywords -試一試,抓,最後而且扔.
- 試一試−Try塊標識將被激活的特定異常的代碼塊。一個或多個Catch塊緊隨其後。
- 抓−程序在程序中想要處理問題的地方用異常處理程序捕獲異常。關鍵字Catch表示捕獲異常。
- 最後−Finally塊用於執行給定的語句集,無論是否拋出異常。例如,如果您打開一個文件,那麼無論是否引發異常,該文件都必須關閉。
- 扔−當出現問題時,程序拋出異常。這是使用Throw關鍵字完成的。
語法
假設一個塊將引發一個異常,一個方法將使用Try和Catch關鍵字的組合捕獲一個異常。Try/Catch塊放置在可能生成異常的代碼周圍。Try/Catch塊中的代碼被稱為受保護代碼,使用Try/Catch的語法如下所示
試一試
[tryStatements]
[退出嚐試]
[Catch [exception [As type]]] [When expression]
[catchStatements]
[退出嚐試]]
[抓……]
(最後
[finallyStatements]]
最後試一試
您可以列出多個catch語句來捕獲不同類型的異常,以防您的try塊在不同的情況下引發多個異常。
.Net Framework中的異常類
異常在VB中表示為類。淨框架。VB中的異常類。網framework are mostly derived directly or indirectly from the System.Exception class. The types System.ApplicationException and System.SystemException is some of the classes derived from System.Exception class.
這個係統。ApplicationException類處理應用程序拋出的錯誤。因此,程序員指定的異常應該從該類派生。
的係統。SystemException類充當預定義的所有係統異常的基類。
下麵列出了一些從係統派生的預定義異常類。SystemException類−
異常類 |
描述 |
System.IO.IOException |
處理I/O錯誤。 |
係統。IndexOutOfRangeException |
句柄錯誤發生在方法引用超出範圍的數組索引時。 |
係統。ArrayTypeMismatchException |
處理類型與數組類型不匹配時發生的錯誤。 |
係統。得到NullReferenceException |
處理由延遲到空對象引起的問題。 |
係統。DivideByZeroException |
處理由除數為零引起的問題。 |
係統。InvalidCastException |
處理類型轉換期間發生的錯誤。 |
係統。OutOfMemoryException |
處理由於缺乏空閑內存而引起的錯誤。 |
係統。堆棧OverflowException |
處理由堆棧溢出引起的錯誤。 |
處理異常
以try和catch塊的形式,VB。網gives a structured answer to exception handling concerns. The core program statements are separated from the error-handling statements using these blocks.
試一試,抓&最後關鍵字用於實現錯誤處理塊。
創建自定義異常:
類派生的異常也可以定義ApplicationException類。
投擲物體
如果一個對象直接或間接地派生自“係統”。異常類'你可以拋出它。
在catch塊中,可以使用throw語句將當前對象拋出為
Throw[表達式]