【C#】异常处理

前言

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

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();
}

运行结果

    指定的转换无效
    程序执行完毕...
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值