调试及异常处理.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八章 调试、异常处理 2 目标 理解如何调试应用程序和排除错误 在程序中进行错误捕获和错误处理 3 调试的必要性 在事物处理过程中,系统显示错误消息 必须重新输入全部信息 在部署应用程序前必须先对其进行调试 4 错误类型 错误类型 语法错误 逻辑错误 运行时错误 语法错误、缺少括号等 在编译时确定 易于确定 错误的算法导致错误结果、公式错误等 在执行过程中确定 难以调试 内存泄漏、以零作除数、异常 在运行时确定 难以调试 5 调试过程 调试器 观察程序的运行时行为 跟踪变量的值 确定语义错误的位置 6 调试的关键----断点 暂停 可在代码中插入“断点”,以便在特 定行处暂停执行该代码 断点设置与跟踪方式 添加断点 (F9) 启动调试(F5) 过程调试 (F10) 单步调试 (F11) 案例演示 8 调试过程 右键单击所需代码行,以设置断点 选择“插入断点” 9 调试过程 选择“调试” “继续”以便继续执行程序 10 调试过程 .NET 集成开发环境 Debug模式 Release模式 11 VS2008 中的调试工具 “局部变量”窗口 12 VS2008 中的调试工具 “监视”窗口 13 VS2008中的调试工具 “即时”窗口 断点高级设置 断点的触发条件设置 案例演示 异常处理 程序 执 行 异常处理 恢复 程序 16 在 C# 程序中,引发异常共有以下两种方式 使用显式 throw 语句来引发异常。在此情况下,控制权将无条件转到处理异常的部分代码 使用语句或表达式在执行过程中激发了某个异常的条件,使得操作无法正常结束,从而引发异常 Try...Catch...Finally 常见的异常类型 .NET Framework 公共语言运行 时引发的异常 用户程序 引发的异常 异常的常用属性 属性名称 说明 Source 此属性表示导致异常发生的应用程序或对象的名称 Message 提供引起异常的详细信息 StackTrace 此属性提供在堆栈上所调用方法的详细信息,并首先显示最近调用的方法 InnerException 对内部异常的引用,如果此异常基于前一个异常,则内部异常指最初发生的异常 19 try 和 catch 块 滤水器 filter_water() { try { water(); } catch { impurities.Show(); } } ……. ……. 过滤水 杂质 //程序代码 //错误处理代码 try { //程序代码 } catch (IOException E) { //错误处理代码 } 20 try 和 catch 块 try { //程序代码 } catch (IOException E) { //错误处理代码 } I/O 设备可以生成错误 21 try 和 catch 块 try { //程序代码 } catch( on) { //错误处理代码 } 可处理系统中的任何一种异常 System.Excepti 22 使用 finally try { //程序代码 } catch { //错误处理代码 } finally { //finally 代码 } 无论控制流如何都会执行 23 多重 catch 块 try { //程序代码 } catch (IOException E) { //错误处理代码 } catch (OutOfMemoryException E) { //错误处理代码 } 用于捕捉两种异常的“catch”块,注意继承关系 24 嵌套 块 try { try { //程序代码 } catch (Exception E1) { //错误处理代码 } } catch (Exception E2) { //错误处理代码 } 25 嵌套 块 try { //程序代码 } catch (Exception E1) { try { //错误处理代码 } catch (Exception E2) { //错误处理代码 } } 26 嵌套 块 try { //程序代码 } catch (Exception E2) { //错误处理代码 } finally { try { //程序代码 } catch (Exception E1) { //错误处理代码 } Finally { } } 自定义异常 继承于ApplicationException基类 可以更好的提供信息和实现自定义的功能。 28 try 和 catch 块 if (UserInput 1 UserInput 100) { throw new I

文档评论(0)

xiaofei2001128 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档