c#抛出异常后如何不执行finally而直接跳出程序执行

如题所述

finally{}大括号里的东西不管程序是否出异常都必执行的,如果你想在异常时不执行finally中的代码就别加finally{}。try{}catch{}finally{}不是固定成套的。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-06-25
不应该啊 你把代码贴出来

c# 指定的异常情况处理 finally 的用法
注:(1)行被执行则会抛出一个异常,如果没有catch语句,程序会异常终止,使用不带参数的catch子句,则可以捕获任意类型的异常。如果将(1)行和上面的相关变量声明注释掉,启用(2)行,这意味该程序运行时不会出现异常,从输出可知,finally代码块仍将被执行。using System;public class DivisorIsZero ...

C# 当 try{}内的错误发生时,如何 停止程序的执行?
} finally { \/\/这里是不管try里有没有错误都回执行的代码 \/\/注意:这里不能用 return 停止程序 } catch { \/\/这里是try有错误时执行的代码 \/\/这可用return停止程序 } 顺便说下,请把要在整个代码块加try,这样程序回执行比较慢的。因为加了try编译程序回多加些异常处理程序,编译出来的程序回比较...

C# try catch捕获异常如何让它不再继续不抛出
conn.Open(); \/\/可能出现异常的代码 obj_ret = cmd.ExecuteScalar(); \/\/可能出现异常的代码 } catch (System.Exception ex){ Console.WriteLine("[ERROR] 数据库操作出现异常:"+ex.Message);return;} finally { conn.Close(); \/\/关闭数据连接 } ………} catch(System.Exception ex...

C#如果多次执行异常的代码呢?
你处理是执行了catch中的语句,怎麼好跳到前面去呢,就算用goto语句跳过去,你还要知道跳的位置,还不如把可能异常的代码先放在try中,然後把不管发不发生异常就执行finally块裏面的代码,这里就放你必须执行的代码,如果finally块中的代码还需要捕抓就在裏面嵌套用try...catch..finally语句就好了。

c# try{}catch{}抛出异常之后,如何再重新执行try,
重新加载一次他就会重新执行啊,要不就写在条件判断循环里,这样没执行完一次,条件判断一次,主用用在从数据库中捞数据,这个应该是很好办到的,有一点不明白try{}cacth{}本身就是异常处理语句,用在可能出现错误的地方,那为什么还要要他重新执行呢??不解~~~...

c#描述异常处理语句try、catch、finally执行时的相互关系
那么try从产生异常开始到try结束的这段代码将不会执行,转而去执行catch.finally是try执行完后执行(没发生异常)或者在catch后执行(发生了异常),也就是说finally无论怎么样,都会执行.3个连起来就像平时口语中的 "(try)假如^^^,(catch)就^^^,(finally)最后^^^ ...

C#的异常处理机制中,finally会一定执行吗
一定会执行的。Try执行了如果出现异常就转入catch,但是必须进入finally模块执行

c#中的try , cacth , finally 都是什么意思啊?怎么用啊
finally块是可选的,无论try和catch部分是否抛出异常,它都会被执行。这通常用于释放资源,如数据库连接、文件句柄等,确保资源在所有情况下都能被正确关闭,提高代码的健壮性。在finally块中,你可以编写无论是否出现异常都需要执行的清理代码。总的来说,try, catch, finally 是C#中一种重要的错误处理...

c#为什么不能在finally中return-CSDN论坛
除非程序崩溃,或者硬件方面原因~~强制结束进程(线程),其它的话肯定会执行 非当前过程原因的错误会使得Finally代码不运行。比如···你根本没有运行程序···它就绝对不会运行finally···

c#出错,后面代码不执行了 也不抛异常。连try也不进。比如在线程里面执行...
多线程调试问题多多,也不容易调试,建议加日志输出重要参数或用catch捕获异常来调试代码。用log4net输出日志就是个不错的选择

相似回答