为什么"返回;扔......"不认为无法访问的代码?

时间:2015-04-11 22:18:21

标签: c# exception return

我在C#程序中有一个基本上如下的方法:

public bool Connect()
{
    try
    {
        // try to connect
        return true;
    }
    catch(MySqlException e)
    {
        throw new CustomException(e.Message);
        return false;
    }
}

问题在于这些特定线的顺序。编译器抱怨这一点,并将return语句指示为无法访问的代码:

throw new CustomException(e.Message);
return false;

但它没有抱怨这个:

return false;
throw new CustomException(e.Message);

为什么第一个不起作用,但第二个起作用?一旦方法命中return语句,它就不会退出吗?

0 个答案:

没有答案