一, 什么叫异常?
异常就是程序运行时的错误,它违反了一个系统约束或应用程序约束,或出 现了在正常操作时未预料的情形。如用0去除一个数时就会发生异常。
二, try…catch…finally…语句的结构?
未例:
try
{
Statement;
}
catch(…)
{
Statement;
}
finally
{
Statement;
}
1、 try块包括正被异常保护的代码。
2、 catch块是处理异常的代码块,也称异常处理程序。
3、 finally块是在所有情况下无论如何都要执行的代码,无论有没有异常发生。
三, 综合示例:
namespace try_catch
{
class Program
{
static voidMain(string[] args)
{
MyClass mc = new MyClass();
try
{
mc.A();
}
catch (DivideByZeroException)
{
Console.WriteLine("catch clause inMain()");
}
finally
{
Console.WriteLine("finally clause inMain()");
}
Console.WriteLine("After try statement inMain.");
Console.WriteLine(" --keep running!");
}
}
class MyClass
{
public void A()
{
try
{
B();
}
catch (System.NullReferenceException)
{
Console.WriteLine("catch clause in A()");
}
finally
{
Console.WriteLine("finally clause in A()");
}
}
protected void B()
{
int x = 10, y = 0;
try
{
x /= y;
}
catch (System.IndexOutOfRangeException)
{
Console.WriteLine("catch clause in B()");
}
finally
{
Console.WriteLine("finally clause in B()");
}
}
}
}
程序输出结果为:
finally clause in B()
finally clause in A()
catch clause inMain()
finally clause inMain()
After try statement inMain.
--keep running.