Appearance
异常处理
程序在运行过程中可能会出错,有些错误发生了以后程序仍会执行(例如死循环,直至内存耗尽),但有些错误发生了之后就会造成严重的后果(例如被除数为0)。有些错误我们能够排查,但是有些错误很隐蔽,不好说到底会不会发生,什么时候发生,所以我们需要一个机制,保证程序不会遇到错误就直接结束运行。
try...catch...finally
csharp
static void Main(string[] args)
{
try
{
int[] arr = { 1, 2, 3 }; // 只有三个值,下标为0, 1, 2
int getArr = arr[4]; // 显然没有下标为4的值,数组越界
}
catch(Exception e) // 不知道异常的类型就用这个异常的基类
{
Console.WriteLine("发生异常: {0}", e);
}
finally
{
Console.WriteLine("不管有没有异常,我都要执行一下");
}
Console.ReadKey();
}