->异常的类型
try-catch ; try-catch-finally ; try-finally
在类方法中异常处理的过程是:
*异常抛给调用它的方法!
*如果该方法没有处理异常,就再往上抛,
*如果做了异常处理就不再往上抛了
实例:
class Program
{
static void Main(string[] args)
{
try
{
Func1();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.ReadKey();
}
public static void Func1()
{
// 如果该方法中用到一个资源需要被回收
try
{
Func();
}
//此段如果不注释掉,异常信息由Func1自己处理
//如果注释掉,异常信息交由调用函数处理
//catch (Exception ex)
//{
// Console.WriteLine(ex.Message + " 自己处理");
//}
finally
{
Console.WriteLine("释放资源");
}
}
public static void Func()
{
throw new Exception("Func 异常信息 ");
}
}
}
异常处理时,应该注意的问题:
-> try代码中一旦异常,其后代码不再执行
-> finally总会执行
-> finally中不能有return语句(此处上次出错,想在finally中返回出错信息,现在仔细一想,哎!)
-> 即使try中有return,finally中的代码也会执行