温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C#异常怎么处理

发布时间:2021-12-01 13:52:36 来源:亿速云 阅读:123 作者:iii 栏目:编程语言

这篇文章主要讲解了“C#异常怎么处理”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#异常怎么处理”吧!

异常是程序运行中发生的错误,C#异常处理是程序设计的一部分。在C#异常处理是通过Exception基类进行的,可以创建自己的异常类,但这个类必须是继承自Exception基类。

异常将导致不完善或者不需要的结果,因此在程序设计中需要处理异常。异常也可以是象"IndexOutOfBounds"这样的错误,这个错误表示程序试图访问数组中部存在的元素;比如数组***元素为100,当试图访问元素101时就将会发生这样的错误。但这些都是内建的异常,可以直接通过 Exception基类处理,如果发生的异常不是内建的,那么就需要我们自己见一个C#异常处理类,当然这个类时继承自Exception基类。

下面的程序定义了一个自己的异常类:

using System;  public class MyException:Exception  {  public string s;  public MyException():base()  {  s=null;  }  public MyException(string message):base()  {  s=message.ToString();  }  public MyException(string message,Exception myNew):base(message,myNew)  {  s=message.ToString();// Stores new exception message into class member s  }  public static void Test()  {  string str,stringmessage;  bool flag=false;  stringmessage=null;  char ch=' ';  int i=0;  Console.Write("Please enter some string (less than 27 characters) - ");  str=Console.ReadLine();  try{  ch=str[i];  while (flag==false)  {  if (ch=='\r')  {  flag=true;  }  else{  ch=str[i];  i++;  }  }  }  catch(Exception e){  flag=true;  }   if (i>27)  {  stringmessage="你的输入不能超过27个字 !";  throw new MyException(stringmessage);  }  }  public static void Main()  {  try  {  Test();  }  catch(MyException e)  {  Console.WriteLine(e.s);  }  }  }

上面的代码建立了一个新的继承于Exception基类的异常类叫MyException,这个类有三个过载构造函数,采用三个构造函数的目的十分简单:为了能够过载基类的构造函数。基类中缺省的和已经实现的构造函数必须在继承类中实现,但是我们设计这个类的真正目的是:当用户输入超过27 个字就显示一段错误提示信息,提醒用户输入不能超过27个字。虽然这更像是数据验证而不是一个真正的异常但却是一个比较好的例子,新的异常 MyException被函数Test()抛出,通过该方法信息"你的输入不能超过27个字"被main()的catch块获得。

感谢各位的阅读,以上就是“C#异常怎么处理”的内容了,经过本文的学习后,相信大家对C#异常怎么处理这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI