在一次面试中,我遇到了一个关于自定义例外的问题。如下所示,有四个多个捕获项,它们捕获每个自定义异常。面试官要求我为catch块编写一个伪代码,如何处理所有四个自定义异常。

I回答为
try
{ try
{
try { }
catch (DEx dEx) { Console.WriteLine(dEx.Message); }
}
catch (BEx bEx) { Console.WriteLine(bEx.Message); }
catch (CEx cEx) { Console.WriteLine(cEx.Message); }
}
catch (AEx aEx) { Console.WriteLine(aEx.Message); } 是对还是错?
发布于 2013-04-25 03:52:45
CEx和DEx继承BEx,BEx继承AEx。因此,异常处理应该从下到上开始。最后一个基本异常。
try
{
// statements causing exception
}
catch( CEx cEx )
{
// error handling for CEx
}
catch( DEx dEx )
{
// error handling for DEx
}
catch( BEx bEx )
{
// error handling for BEx
}
catch( AEx aEx )
{
// error handling for AEx
}
finally
{
// statements to be executed
}https://stackoverflow.com/questions/16205948
复制相似问题