public void MyMothed()
{
try
{
//do something
int x=5/0;//被0除,这里出错。
}
catch(SystemException)
{
//do something here
}
catch(DivideByZeroException)
{
//这里是出现被0除错误的解决方法
}
catch(Exception)
{
//这个就是“通用catch块”
}
}
在上面这个例子方法中,最后一个“catch(Exception)”就是“通用catch块”,它负责捕获Exception类型的错误,Exception类型表示“在应用程序执行期间发生的错误。”,也就是说无论发生了什么错误,这个catch快都可以将它捕获,C#中的所有错误类型都是从这个Exception类派生出来的,C#语法硬性规定一个try..catch块中只能有一个通用catch块。
另外,这个catch(Exception)块必须放在一个try..catch结构的最后,否则将产生编译器警告,因为这个块会捕获所有的错误,所以后面的catch语句将永远不会被执行。