在C#内的异常,会有时候看见有些人的代码中含有return,那么它有了return 那还会不会走下面的语句呢?例如:
try
{
do sth 1();
do sth 2();
do sth 3();
return true;
}
catch
{
return false;
}
finaly
{
con.close();
}
执行顺序为
如果要是在try 语句中do sth1 ();出现异常,那就不会走try下面的语句,而是跳到catch语句里,然而它发现catch里是return,然后他又跳到finaly语句里执行完了finaly语句后再执行catch语句里的return false..
这里需要注意的就是finaly的语句在任何状态下都是会执行的,无论是在catch里放了什么样的俄跳转语句。