- 1、本文档共24页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
C#高级编程第十一章异常处理
本章目标了解常用异常了解.NET异常处理的作用掌握配置异常的状态(重点)了解应用程序级异常掌握处理多个异常(重点)
本章任务实现汽车速度超过限速时的异常处理
错误、bug和异常bug:简单来说,这是由程序员一方引起的错误。举例来说,假定我们在进行非托管编程,如果删除已分配的内存失败(从而导致内存泄漏),就会产生一个bug。用户错误:与bug不同,用户错误往往不是由应用程序作者,而是由运行程序的用户引起的。例如,如果你在代码中没有处理错误输入,当最终用户在文本框中输入格式非法的字符串时,很可能会产生用户错误。异常:异常往往是运行时的非正常情况,在编程时很难被估计到。异常可能包括试图连接一个已经不存在的数据库,打开已被破坏的XML文件,连接当前处于离线状态的机器等。在上述各种情况下,程序员和最终用户都无法完全控制这些异常情况。
.NET异常处理的作用结构化异常处理方案的优点:开发人员现在有了统一的,而且对领域内各种语言都通用的方式来处理错误。用以引发和捕获异常的语法,在不同程序集间或计算机间都是一致的。不再是通过接收意义模糊的数字常量来确定问题,而是可以通过异常,它们包含容易读懂的问题描述信息和首次触发异常时调用栈的详细快照。
异常处理的四要素一个表示异常详细信息的类型;一个向调用者引发异常类实例的成员;调用者的一段调用异常成员的代码块;调用者的一段处理(或捕获)将要发生异常的代码块。
System.Exception类型的核心成员属性作用Data此属性返回一个键丨值对集合(表示为一个实现接口的对象),提供有关该异常的更多程序员定义信息。该集合默认情况下为空HelpLink此属性返回一个URL,指向包含详细错误信息描述的帮助文件或网站InnerException此属性为只读,可用来获取导致当前异常发生的上一个(或上一组)异常的相关信息。上一个(或上一组)异常作为参数被传入当前异常的构造函数而被记录厂来Message此属性为只读,它返回指定错误的文字描述。错误信息本身就是构造函数的一个参数Source此属性返回引发该异常的程序集或对象的名称
引发普通异常构建Car类编写超速方法测试结果引发普通异常CurrentSpeed+=delta;if(CurrentSpeedMaxSpeed){CurrentSpeed=0;carIsDead=true;thrownewException(string.Format({0}已经超速,PetName));}elseConsole.WriteLine(当前速度:{0},CurrentSpeed);使用throw关键字引发异常
捕获异常try{for(inti=0;i10;i++)myCar.Accelerate(10);}catch(System.Exceptionex){Console.WriteLine(******错误!******);Console.WriteLine(方法:{0},ex.TargetSite);Console.WriteLine(消息:{0},ex.Message);Console.WriteLine(来源:{0},ex.Source);}输出异常内容捕获异常
配置异常状态TargetSite属性:帮助我们了解引发某个异常的方法的各种信息StackTrace属性:帮助我们标识引发异常的一系列调用HelpLink属性:能帮助用户找到具体的或包含更详细相关信息的标准Windows帮助文件Console.WriteLine(方法:{0},ex.TargetSite);Console.WriteLine(成员属于:{0},ex.TargetSite.DeclaringType);Console.WriteLine(成员类型:{0},ex.TargetSite.MemberType);Console.WriteLine(堆栈跟踪:{0},ex.StackTrace);Exceptionex=newException(string.Format({0}已经超速,PetName));ex.HelpLink=;throwex;Console.WriteLine(帮助的链接:{0},ex.HelpLink);捕获异常触发异常
配置异常状态Data属性:允许我们使用用户提供的相应信息(如时间戳)来填充异常对象if(CurrentSpeedMaxSpeed){CurrentSpeed=0;carI
您可能关注的文档
- 台式计算机样本rdef64124.pdf
- 白桦林低语作业课件课前预习.pptx
- 课程-汉中支衔接训练包.pptx
- 2024年秋季新北师大版8年级上册物理全册教学课件.pptx
- 2025年春新人教版历史7年级下册全册教学课件.pptx
- 2024年秋季新人教版9年级上册化学全册教学课件(新版教材).pptx
- 2025年春新人教版8年级物理下册全册教学课件.pptx
- 2025年春新人教版英语7年级下册全册课件 (2).pptx
- 九年级数学上册2413弧弦圆心角省公开课一等奖百校联赛赛课微课获奖课件.pptx
- 中考历史总复习专题专题2近现代中国人民的抗争探索史省公开课一等奖百校联赛赛课微课获奖课件.pptx
- 中考语文总复习语文知识及应用专题5仿写修辞含句子理解市赛课公开课一等奖省课获奖课件.pptx
- 湖南文艺版(2024)新教材一年级音乐下册第二课《藏猫猫》精品课件.pptx
- 湖南文艺版(2024)新教材一年级音乐下册第三课《我向国旗敬个礼》精品课件.pptx
- 高中生物第四章生物的变异本章知识体系构建全国公开课一等奖百校联赛微课赛课特等奖课件.pptx
- 整数指数幂市公开课一等奖省赛课微课金奖课件.pptx
- 一年级音乐上册第二单元你早全国公开课一等奖百校联赛微课赛课特等奖课件.pptx
- 八年级数学上册第二章实数27二次根式第四课时习题省公开课一等奖新课获奖课件.pptx
- 九年级物理全册11简单电路习题全国公开课一等奖百校联赛微课赛课特等奖课件.pptx
- 八年级语文下册第五单元19邹忌讽齐王纳谏省公开课一等奖新课获奖课件.pptx
- 2024年秋季新人教PEP版3年级上册英语全册教学课件 (2).pptx
最近下载
- 国家烟草公司招聘考试真题.pdf
- 【精品班会】高中主题班会课件:纪律教育主题班会课件(共38张PPT).ppt
- 2024年春学期人教版初中数学九年级下册教学计划和教学进度表.pdf
- 美容院店务经营诊断表.doc
- Python程序设计课件:初识Python程序设计语言.pptx VIP
- 第十八届“地球小博士”全国地理知识科普竞赛题库(附答案).pdf VIP
- 2024年陆军特色医学中心(大坪医院)人员招聘备考题库及答案解析.docx
- 《Python程序设计》教学课件01初识Python.pptx VIP
- 2025年中国农产品贸易行业市场全景评估及投资潜力预测报告.docx
- 预应力混凝土空心桩力学性能、承载力特征值计算表、锤击沉桩锤重选择表、闭口桩尖构造.docx VIP
文档评论(0)