《程序员的第一年》---------- 学会抛出异常 你的程序人生才幸福
爱情就是死循环,一旦执行就陷进去了。
情绪不好的时候碰到问题时,头脑都是晕的。
今天一个程序上线,因为一个异常没有处理,报错时无地方处理,程序崩溃了。这个让是要挨骂的哦。
----------------------------------------------------------------------------------------------------------------------------------------
Try catch 知识是从MSDN里看的,只是自己的笔记,如有不对,请不要吐槽。
-----------------------------------------------------------------------------------------------------------------------------------------
http://msdn.microsoft.com/zh-cn/library/vstudio/0yd65esw.aspx
-----------------------------------------------------------------------------------------------------------------------------------------
throw 语句用于发出在程序执行期间出现反常情况(异常)的信号。
引发的异常是一个对象,该对象的类是从 System.Exception 派生出来的。
-----------------------------------------------------------------------------------------------------------------------------------------
try-catch 语句由一个 try 块后跟一个或多个 catch 子句构成,这些子句指定不同的异常处理程序。
引发异常时,公共语言运行时 (CLR) 会查找处理此异常的 catch 语句。如果当前执行的方法不包含这样的 catch 块,则 CLR 会查看调用当前方法的方法,然后会遍历调用堆栈。 如果找不到 catch 块,则 CLR 会向用户显示一条有关未经处理的异常的消息并停止执行程序。
(所以当异常未处理的时候,可以根据堆栈来寻找异常)
finally 一般都是用于处理后勤事吧
总结:
catch 和 finally 一起使用的常见方式是:在 try 块中获取并使用资源,在 catch 块中处理异常情况,并在 finally 块中释放资源。
1.可以使用不带参数的 catch 子句捕捉任何类型的异常,但不推荐这种用法
2. catch里有
throw;
表示从异常中提取源信息,然后向父方法发送异常。
3.catch里有
throw new exception(e);
表示可捕获一个异常并引发另一个异常。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)