成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#異常處理詳細剖析

開發 后端
這里介紹,C#異常處理是程序設計的一部分。在C#異常處理是通過Exception基類進行的,可以創建自己的異常類,但這個類必須是繼承自Exception基類。

學習C#語言時,經常會遇到C#異常問題,這里將介紹C#異常處理問題的解決方法。

異常是程序運行中發生的錯誤,C#異常處理是程序設計的一部分。在C#異常處理是通過Exception基類進行的,可以創建自己的異常類,但這個類必須是繼承自Exception基類。

異常將導致不完善或者不需要的結果,因此在程序設計中需要處理異常。異常也可以是象"IndexOutOfBounds"這樣的錯誤,這個錯誤表示程序試圖訪問數組中部存在的元素;比如數組***元素為100,當試圖訪問元素101時就將會發生這樣的錯誤。但這些都是內建的異常,可以直接通過 Exception基類處理,如果發生的異常不是內建的,那么就需要我們自己見一個C#異常處理類,當然這個類時繼承自Exception基類。

下面的程序定義了一個自己的異常類:

  1. using System;  
  2. public class MyException:Exception  
  3. {  
  4. public string s;  
  5. public MyException():base()  
  6. {  
  7. s=null;  
  8. }  
  9. public MyException(string message):base()  
  10. {  
  11. s=message.ToString();  
  12. }  
  13. public MyException(string message,Exception myNew):base(message,myNew)  
  14. {  
  15. s=message.ToString();// Stores new exception message into class member s  
  16. }  
  17. public static void Test()  
  18. {  
  19. string str,stringmessage;  
  20. bool flag=false;  
  21. stringmessage=null;  
  22. char ch=' ';  
  23. int i=0;  
  24. Console.Write("Please enter some string (less than 27 characters) - ");  
  25. str=Console.ReadLine();  
  26. try{  
  27. ch=str[i];  
  28. while (flag==false)  
  29. {  
  30. if (ch=='\r')  
  31. {  
  32. flag=true;  
  33. }  
  34. else{  
  35. ch=str[i];  
  36. i++;  
  37. }  
  38. }  
  39. }  
  40. catch(Exception e){  
  41. flag=true;  
  42. }  
  43.  
  44. if (i>27)  
  45. {  
  46. stringmessage="你的輸入不能超過27個字 !";  
  47. throw new MyException(stringmessage);  
  48. }  
  49. }  
  50. public static void Main()  
  51. {  
  52. try  
  53. {  
  54. Test();  
  55. }  
  56. catch(MyException e)  
  57. {  
  58. Console.WriteLine(e.s);  
  59. }  
  60. }  
  61. }  

上面的代碼建立了一個新的繼承于Exception基類的異常類叫MyException,這個類有三個過載構造函數,采用三個構造函數的目的十分簡單:為了能夠過載基類的構造函數?;愔腥笔〉暮鸵呀泴崿F的構造函數必須在繼承類中實現,但是我們設計這個類的真正目的是:當用戶輸入超過27 個字就顯示一段錯誤提示信息,提醒用戶輸入不能超過27個字。雖然這更像是數據驗證而不是一個真正的異常但卻是一個比較好的例子,新的異常 MyException被函數Test()拋出,通過該方法信息"你的輸入不能超過27個字"被main()的catch塊獲得。

【編輯推薦】

  1. C#窗體里調用淺談
  2. C#調用ListEmployee命令
  3. C# CreateEmployeeDefinition()函數
  4. C#實現斷點續傳詳細剖析
  5. C# Employee對象淺談
責任編輯:佚名 來源: 博客園
相關推薦

2009-08-27 17:14:36

C# Socket

2009-09-11 11:17:04

C#引用類型

2009-08-27 17:51:34

C#匿名方法

2009-09-03 16:58:49

C#內存管理

2009-09-18 10:00:17

C#數組操作

2009-09-04 11:06:40

C#訪問修飾符

2009-08-31 16:29:21

C#控制輸入法

2009-09-07 13:42:56

C# Pop3類

2009-08-28 15:38:49

C#實現斷點續傳

2009-08-06 14:08:08

C#語言異常處理

2009-08-05 18:28:05

C#異常處理

2009-08-05 18:09:17

C#異常處理機制

2009-09-07 15:21:38

Java與C#事件處理

2009-09-07 14:29:52

C# ServiceC

2009-09-01 16:29:03

QuickSort C

2024-04-16 12:18:05

編程異常處理錯誤返回

2009-08-28 17:46:18

C#讀取Word文檔

2009-09-14 14:17:11

Linq異常處理

2010-01-13 13:42:55

C++編譯器

2021-03-25 07:44:39

C++異常處理開發技術
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: av一区二区三区四区 | 久久国产欧美日韩精品 | 国产精品影视 | 91www在线观看 | 日韩欧美三区 | 九九一级片 | 亚洲精品综合 | 综合色播 | 中文字幕在线免费视频 | 狠狠操狠狠干 | 国产精品高潮呻吟久久 | 亚洲综合大片69999 | 91色在线 | 亚洲国产成人精品久久久国产成人一区 | 狠狠干网站 | 国产精品18久久久久久白浆动漫 | 午夜视频在线 | 精品美女视频在免费观看 | 综合九九 | 操操日 | 1000部精品久久久久久久久 | 国产精品精品视频 | 人人操日日干 | 成人妇女免费播放久久久 | 粉嫩一区二区三区四区公司1 | 日韩一区在线播放 | a级毛片免费高清视频 | 免费看av大片| 国产色网站 | 一级无毛片 | 欧美成人免费在线 | 超碰日本| 亚洲国产成人精品久久久国产成人一区 | 精品国产91 | 亚洲成色777777在线观看影院 | 嫩呦国产一区二区三区av | 免费看日韩视频 | 国产精品一区2区 | 欧美日韩欧美 | 亚洲一区在线日韩在线深爱 | 国产在线a |