【C#】异常处理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/LT_Future/article/details/82316685

前言

异常处理相当于大楼失火时,烟雾感应器捕获到高于正常密度的烟雾,将自动喷水进行灭火的操作。

C#程序中,使用异常处理语句处理异常。主要的异常处理语句有throw语句,try..catch语句和try..catch…finally语句。

throw语句

throw语句用于主动引发一个异常,使用throw语句可以在特定的情形下,自动抛出异常。

基本格式:

throw ExObject

try…catch语句

try…catch语句在try后面的大括号中防止可能发生异常情况的程序代码,对这些程序代码进行监控;

在catch后面的大括号中放处理错误的程序代码,处理程序发生的异常。

基本格式

try
{
    被监控的代码
}
catch(异常类名 异常变量名)
{
    异常处理
}

举例

static void Main(string[] args)
{
try
{
    object obj=null;//声明一个object变量,初始值为null
    int N=(int)obj;//将object类型强制转换成int类型
}
catch(Exception ex)//捕获异常
{
    Console.WriteLine("捕获异常:"+ex);//输出异常
}
console.ReadLine();
}

try…catch…finally语句

将finally语句与try…catch语句结合,形成try…catch…finally语句。finally语句以区块的方式存在,程序执行完毕,最后跳到finally语句区块,执行代码。

  • 无论是否产生异常,最后都会中finally语句块中的程序代码。
  • finally区块中通常是一些在任何情形下都必须执行的代码。

基本格式

try
{
    被监控的代码
}
catch(异常类名 异常变量名)
{
    异常处理
}
finally
{
    程序代码
}

举例

static void Main(string[] args)
{
    string str="小明";//声明一个string类型变量str
    object obj=str;//声明一个string类型变量obj
    try
    {
        int i=(int)obj;//将obj强制转换成int类型
    }
    catch(Exception ex)
    {
        Console.WriteLine(ex.Message);//输出异常信息
    }
    finally
    {
        Console.WriteLine("程序执行完毕");//输出“程序执行完毕...”
    }
    Console.ReadLine();
}

运行结果

    指定的转换无效
    程序执行完毕...

猜你喜欢

转载自blog.csdn.net/LT_Future/article/details/82316685