日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

黑马程序员-异常介绍与处理

發布時間:2025/3/19 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 黑马程序员-异常介绍与处理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

---------------------- ASP.Net+Android+IOS開發、.Net培訓、期待與您交流! ----------------------

?

? 1、? 什么是異常?

???1、程序運行時發生的錯誤。(錯誤的出現并不總是程序員的原因,有時應用程序會因為最終用戶或運行代碼的環境改變而發生錯誤。比如:1、連接數據庫時服務器停電了;2、操作文件時文件沒了、權限不足等;3、計算器用戶輸入的被除數是0;4、使用對象時對象為null;等等)

??? 2、.net為我們把“發現錯誤(try)”的代碼與“處理錯誤(catch)”的代碼分離開來。

2、異常處理的一般代碼模式:

?? 1、try{…可能發生異常的代碼…} catch{…對異常的處理…} finally{…無論是否發生異常、是否捕獲異常都會執行的代碼…}

?? 2、try塊:可能出問題的代碼。當遇到異常時,后續代碼不執行。

?? 3、catch塊:對異常的處理。記錄日志(log4net),繼續向上拋出等操作。(只有發生了異常,才會執行。)

?? 4、finally塊:代碼清理、資源釋放等。無論是否發生異常都會執行。

3、案例:int x=5;int y=0;int z=x/y; 程序運行時出錯,后續的內容無法運行。

4、程序一旦有一個功能發生異常,整個程序崩潰其他功能也無法正常運行。

5、? 錯誤的幾種形式:

1、? ?語法錯誤:語法錯誤一般編譯器會幫我們解決。

2、? ?邏輯錯誤:編譯沒問題,執行不報異常,就是結果不對。

3、異常:在運行時發生的錯誤,異常一般會導致程序崩潰。

A、 空指針異常:未將對象引用設置到對象的實例。

Person? p=new Person();

P=null;

p.Name=”yzk”;

Console.WriteLine(P.Name);

Console.ReadKey();

B、 試圖除以零異常:除數不能為0。

Int n=10;

Int m=0;

Int sum=n/m;

Console.WriteLine(sum);

Console.Readkey();

C、 輸入字符串的格式不正常

string str=”abcd”;

int n=Convert.ToInt32(str);

Console.WriteLine(n);

Console.ReadKey();

6、? catch塊的三種寫法

A、 第一種寫法,這種寫法可以捕獲所有的異常。

Catch

{

?? Console.WriteLine(“異常了?!?;

}

B、 第二種寫法,如果參數類型是:Exception,表示可以捕獲所有的異常。

catch(Exception ex)

{

???? Console.WriteLine(“異常了。{0}”,ex.Message);

}

C、 第三種寫法:根據參數類型的不同,可以捕獲不同的異常。如參數類型是:NullReferenceException,表示只能捕獲空指針異常。

Catch(NullReferenceException? ex)

{

???? Console.WriteLine(“異常了。{0}”,ex.Message);

}

注:捕獲所有異常的catch不能寫在具體異常前面。

Exception類是所有異常類的祖宗類。

7、? 異常處理代碼的其他幾種形式:

A、 try->多個catch->一個finally

B、 try->(1個或多個catch),多個catch的順序問題。沒有finally。

C、 try->finally(只能有一個),沒有catch也可以。

注意點:

A、 發生異常后,try塊中,異常代碼后的代碼不會執行。

B、 finally塊中的代碼,無論是否發生異常都會執行。

C、 finally中不能寫return語句。

D、 try中有return語句,finally也會執行。

E、? 即便沒有catch,finally中的代碼也會執行,但finally之后的代碼則不會。

8、? Exception ex異常也是對象,封裝了異常發生時的一些信息。

9、? Exception類主要屬性:Message、StackTrace、InnerException

10、?扔出自己的異常,扔:throw。抓住:catch

建議:通過邏輯判斷(if-else)減少異常發生的可能性。

--------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Android+IOS開發</a>、<a href="http://edu.csdn.net"target="blank">.Net培訓</a>、期待與您交流! ----------------------

詳細請查看:<a href="http://edu.csdn.net" target="blank">http://edu.csdn.net</a>

?

---------------------- ASP.Net+Android+IOS開發、.Net培訓、期待與您交流! ----------------------

轉載于:https://www.cnblogs.com/zxh930508/p/3544405.html

總結

以上是生活随笔為你收集整理的黑马程序员-异常介绍与处理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。