- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章异常处理 */12 目 录 任务6.1 处理系统异常 任务6.2 处理自定义异常 */12 任务6.1 处理系统异常 2 1 知识目标 能力目标 异常机制 异常捕捉 异常处理 利用异常处理提高系统的容错能力 */12 6.1.1情境描述 在收银过程中,输入的销售数量应该是数字,但当收银员输入过程中输入的数据不是正确的数字,例如输入字母或者其它非数字字符时,系统就会发生错误,为了解决这个问题,他需要完成以下任务: 1)异常捕获 2)异常处理 第1章目录 计算机在接受来自用户输入的数据时,难免发生错误,一旦存在输入的数据非法,计算机的软件系统应该具备容错能力,程序应该能够处理非法输入。目前收银过程中的程序不能对非法错误进行容错,为了处理非法的输入,可以利用异常捕获和异常处理来实现。 第1章目录 6.1.2问题分析 1、利用Visual Studio 2010打开任务5.5项目 2、针对CashRegisterMenu.cs类进行修改,针对AddMenu()方法添加异常捕捉和处理机制。 3、修改EditMenu,添加异常捕获及处理功能。 4、运行输入非法数据进行验证结果 第1章目录 6.1.3解决方案 6.1.4知识总结 1、异常处理 异常是指应用程序运行时遇到的错误或程序意外的行为。如,在运算中被除数为0,数组的下标越界等等的系统定义的异常;也有用户自定义的异常。 在程序运行时出现的错误有以下两种: (1)语法错误 程序的语法错误是由于不满足程序设计语言语法而产生的错误,例如关键字被写错,或者一个语句结束时忽略了分号,在写方法体的时候少了一个大括号等等,程序设计语言是一个逻辑的整体,中间任何一步的错误都将导致整个程序不能正常运行。语法错误大概有如下几种类型: 语句结束少了分号。一般而言,C#语言每一条完整的语句后面都是以分号作为结束的。但是大家注意在for,if,while 小括号后面的语句体只要不是空语句,是不应该加分号的,do---while语句后面例外,要加分号。 第1章目录 */12 6.1.4知识总结 类型匹配错误。例如 int i ; i=67.66; 定义的变量名在使用的时候由于笔误写错,例如 int count;在引用变量的时候不小心写成cont; 引用了空值,定义了一个对象,没有实例化就引用它,这样是不允许的,在定义对象的时候要先初始化。 If else嵌套的时候的匹配错误。 数组下标越界问题。例如定义了具有10个元素的数组arr,在使用的时候arr[10],那么就超出了范围。 在条件判断的时候“= =”经常误写成“=”。例如判断整型变量a是否等于100,如果是则输出优秀,如果不是,则输出良好。 第1章目录 */12 6.1.4知识总结 (2)逻辑错误 逻辑的错误指的是程序的处理逻辑出现错误,也就是程序编译和运行都正常,但运行结果不是预期的,一般语法错误可以在编译的时候发现,但逻辑错误编译器无法识别。有些无法捕获的语法错误就会导致逻辑错误,比如刚才讲的语法错误的第七项,在编译的时候就不会发现,但是如果把if表达式里面的“= =”写成“=”,那么a的值不是100,也会输出优秀。 (3)运行时错误 程序在运行的时候试图去执行一个不被允许的操作,运行时错误一般被称为异常,需要加上异常处理。 第1章目录 */12 6.1.4知识总结 2、异常的种类 在C#中,所有异常的的基类都是System.Exception类,所有的异常都是从此类派生的。当错误发生时,当前运行的程序通过引发包含关于该错误的信息的异常来报告错误。异常发生后,将由该应用程序或默认异常处理程序进行处理。 System.Exception异常类包含两种类型的异常,分别为System.SystemException和System.ApplicationException。 (1)System.SystemException是所有系统预定义的异常的基类。下表描述了派生自系统预定义的异常。 (2)System.ApplicationException类是由用户程序发送的,也就是由用户自定义的异常类。 第1章目录 */12 6.1.4知识总结 3、异常处理 C# 语言的异常处理功能提供了处理程序运行时出现的任何意外或异常情况的方法。异常处理使用 try、catch 和 finally 关键字来尝试可能未成功的操作,处理失败,以及在事后清理资源。 把会产生异常的代码用try模块括起来,产生或抛出异常时,在catch块中进行处理。如果try语句后面的代码发生了异常,系统将会捕获这个异常,并转到catch语句后面的的代码来处理此异常。 异常出现时可以使用throw语句抛出。Throw语句中包括throw关键字及其后面抛出异常的表达式。运算该
您可能关注的文档
- 密码学与网络安全 教学课件 作者 978 7 302 19727 0 附录A.pdf
- 密码学与网络安全 教学课件 作者 978 7 302 19727 0 附录B.pdf
- 密码学与网络安全 教学课件 作者 978 7 302 19727 0 附录C.pdf
- 密码学与网络安全 教学课件 作者 978 7 302 19727 0 附录D.pdf
- 密码学与网络安全 教学课件 作者 978 7 302 19727 0 附录E.pdf
- 密码学与网络安全 教学课件 作者 978 7 302 19727 0 附录F.pdf
- 密码学与网络安全 教学课件 作者 978 7 302 19727 0 附录G.pdf
- 密码学与网络安全 教学课件 作者 978 7 302 19727 0 附录H.pdf
- 密码学与网络安全 教学课件 作者 978 7 302 19727 0 附录I.pdf
- 密码学与网络安全 教学课件 作者 978 7 302 19727 0 附录J.pdf
文档评论(0)