重新学C#编程148-自定义异常

虽然在 C# 语言中已经提供了很多异常处理类,但在实际编程中还是会遇到未涉及的一些异常处理。比如界面要求用户输入数字必须在某个范围,如果输入的不是数字,会产生系统异常,输入的数字超范围也会产生异常,这个异常就属于自定义的异常。

自定义异常类必须要继承 Exception 类。

声明自定义异常的语句如下

class 异常类名 :Exception
{
}

 

抛出自己的异常,语句如下

throw( 异常类名 );

抛出异常就相当于满足某个用户自定义的条件时,去触发这个异常。在catch语句中如果发现这个用户自定义的异常发生后,就执行花括号内的语句。

通过一个具体的练习体会一下。

新建一个项目,要求用户输入一个30-80的数字,做异常处理。

新建一个类,用于自定义异常

class OutRangeExeption:Exception
{
  public OutRangeExeption(string message):base(message)
  {

  }
}

在按钮的鼠标点击事件代码是

private void button1_Click(object sender, EventArgs e)
{
  try
  {
    float num = float.Parse(textBox1.Text);
    if(num>=30 && num<=80)
    {
      MessageBox.Show("输入的数字是" + num);
    }
    else
    {
      throw new OutRangeExeption("输入的数字必须在30-80之间");
    }
  }
  catch(FormatException err)
  {
    MessageBox.Show(err.Message);
  }
  catch(OutRangeExeption err)
  {
    MessageBox.Show(err.Message);
  }
}

当数据类型错误,或者范围超限都会做异常处理。

posted @ 2021-06-20 17:08  来自金沙江的小鱼  阅读(142)  评论(0编辑  收藏  举报