自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C#異常處理的相關(guān)介紹

開(kāi)發(fā) 后端
程序員常常忽視異常處理的重要性,這給他們自己的代碼造成相當(dāng)大損害。本文將討論如何在C#異常處理,并介紹在應(yīng)用代碼中添加代碼片段以防止某些錯(cuò)誤的一些簡(jiǎn)單方法,這些錯(cuò)誤可能導(dǎo)致程序異常終止。

C#異常處理:結(jié)構(gòu)化異常處理

.NET框架提供一種標(biāo)準(zhǔn)的錯(cuò)誤報(bào)告機(jī)制稱為結(jié)構(gòu)化異常處理。這種機(jī)制依賴于應(yīng)用中報(bào)告錯(cuò)誤的異常。

在.NET中,異常是一些提供錯(cuò)誤信息的類,你可以某種方式編寫(xiě)代碼監(jiān)視異常的發(fā)生,然后以一種適當(dāng)?shù)姆椒ㄌ幚懋惓!?/P>

在進(jìn)行C#異常處理時(shí),你需要在代碼中關(guān)注三個(gè)部分:可能導(dǎo)致異常的代碼段(這也通常稱為拋出異常)。當(dāng)執(zhí)行代碼過(guò)程中發(fā)生異常時(shí)將要執(zhí)行的代碼段(這也通常稱為捕獲異常)。

異常處理后要執(zhí)行的代碼段(可選的)(這也通常稱為結(jié)束塊)。

異常類

在.NET框架中的異常類都派生自SystemException 類。這個(gè)類的大部分常用成員如下:

HelpLink是一個(gè)鏈接到幫助文件的鏈接,該幫助文件提供異常的相關(guān)信息。

Message是指明一個(gè)錯(cuò)誤細(xì)節(jié)的文本。

Source導(dǎo)致異常的對(duì)象或應(yīng)用的名稱。

StackTrace是堆棧中調(diào)用的方法列表。

TargetSite是拋出異常的方法名稱。

Try/Catch/Finally 塊

C#中使用Try/Catch/Finally塊處理一個(gè)異常。

Try語(yǔ)句指明在執(zhí)行過(guò)程中需要監(jiān)視拋出異常的代碼塊。

Catch語(yǔ)句指明了在執(zhí)行了Try代碼塊后應(yīng)該執(zhí)行的代碼塊。這個(gè)代碼塊無(wú)論異常是否發(fā)生都會(huì)執(zhí)行。實(shí)際上,它常用于可能要求的清理代碼。

C#異常處理:捕獲所有異常

.NET允許你監(jiān)視某個(gè)特定代碼段中發(fā)生的任何異常;然而,你可以指明具體的異常,列表A顯示捕獲所有異常。為了演示如何監(jiān)視異常這個(gè)代碼包含了一個(gè)錯(cuò)誤。在列表A,通過(guò)聲明一個(gè)異常類型的ex變量,可以捕獲try關(guān)鍵字后可能發(fā)生的任何異常;無(wú)論代碼中出現(xiàn)何種類型的錯(cuò)誤,catch語(yǔ)句塊都將執(zhí)行。此外,即使發(fā)生一個(gè)錯(cuò)誤(無(wú)論何種類型),finally代碼塊將會(huì)執(zhí)行。

C#異常處理:捕獲特定異常

列表B顯示了如何捕獲一個(gè)特定的異常。為了演示捕獲異常這段代碼包含一個(gè)錯(cuò)誤。在列表B,通過(guò)聲明一個(gè)DivideByZeroException類型的變量ex,當(dāng)代碼執(zhí)行時(shí)捕獲了一個(gè)特定異常(DivideByZeroException)。只有這種類型的錯(cuò)誤發(fā)生時(shí)才會(huì)執(zhí)行catch關(guān)鍵字后的語(yǔ)句。此外,即使發(fā)生一個(gè)錯(cuò)誤(在這種情況下的任何類型錯(cuò)誤),finally語(yǔ)句塊將會(huì)執(zhí)行。

【編輯推薦】

  1. 強(qiáng)類型和Actor:ActorLite的演示
  2. C#的Tag Message回顧:繁瑣而危險(xiǎn)
  3. Erlang的Actor回顧:將消息轉(zhuǎn)化為邏輯執(zhí)行
  4. Actor模型的本質(zhì):究竟是要解決什么問(wèn)題
  5. 順暢的使用C# Actor:另一個(gè)解決方案
責(zé)任編輯:彭凡 來(lái)源: builder.com.cn
相關(guān)推薦

2009-08-06 15:12:22

C#異常機(jī)制

2009-08-05 18:39:54

C#異常類

2009-08-06 14:08:08

C#語(yǔ)言異常處理

2009-08-31 17:26:32

C#異常處理

2009-08-07 17:41:40

C#預(yù)處理

2009-08-07 17:45:29

C#預(yù)處理

2009-07-31 16:48:44

C#位運(yùn)算

2024-04-16 12:18:05

編程異常處理錯(cuò)誤返回

2009-09-01 15:08:07

C#命名規(guī)范

2009-08-05 18:09:17

C#異常處理機(jī)制

2009-09-01 15:25:01

C#位域

2009-09-02 14:00:34

C#文件處理

2009-08-28 17:46:18

C#讀取Word文檔

2009-09-02 18:28:00

C#鼠標(biāo)位置

2010-01-07 09:31:27

Json數(shù)據(jù)異常

2024-08-02 10:21:32

C#Exception類自定義異常

2009-08-05 18:01:20

C#自定義異常處理

2024-05-10 11:43:23

C#編程

2009-09-14 14:17:11

Linq異常處理

2009-08-12 18:35:36

C# ArrayLis
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)