面向对象程序设计(C#)第9章 异常处理和跟踪调试.pptVIP

面向对象程序设计(C#)第9章 异常处理和跟踪调试.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1、异常处理概述 异常是一种封装了反常程序事件信息的对象,C#用异常来处理错误和反常情况。 当异常抛出时,当前函数的执行会停止,堆栈展开,直到找到正确的异常处理代码,异常处理代码就是处理异常的代码块。 如果异常得到处理,程序会解决问题并继续执行。即使程序不能继续执行,捕获异常也能使程序输出错误信息并安全地终止程序。 int i = 0 ; string [] greetings = {Hello world !,How are you ?,Thank you !}; while ( i 4 ) { Console.WriteLine(greetings[i]); i++; } 2、常见的异常 在C#中提供有很多的异常类,所有的异常类都是System.Exception类型或是从其派生的类型。 下表列出了System命名空间中许多常见的异常类。 异常通过抛出(throw)来创建,通过捕获( catch )在别处检测。C#使用throw、try和catch这些关键字来执行这些任务。 异常处理机制允许程序直接去捕获异常,并进行处理,然后程序继续执行 在C#语言中,异常处理是使用try … catch … finally语句来完成的,它提供一种机制,用于捕捉在try语句块的执行期间发生的各种异常。 try子句 try try语句块 catch子句 catch ( 数据类型 标识符) catch语句块 finally子句 finally finally语句块 try块中包含可能会产生异常的语句。 catch从句捕捉并处理异常。 如果能确定在try语句块中可能发生的异常类型,那么catch语句可以捕捉相应的异常类型;如果事先并不知道try语句块中会引起哪一种异常,则在catch语句中可以忽略异常的类型。 3.1.1 通用处理 try { int i = 0 ; string [] greetings = {Hello world !,No,I mean it !,HELLO WORLD!}; while ( i 4 ) { Console.WriteLine(greetings[i]); i++; } } catch { Console.WriteLine(异常发生,catch子句捕获了这个异常,并进行了处理,程序继续运行。); } try { operator1 = Convert.ToInt32(textBox1.Text); operator2 = Convert.ToInt32(textBox2.Text); result = checked(operator1 / operator2); textBox3.Text = Convert.ToString(result); } catch (System.Exception e) { MessageBox.Show(输入错误,请检查!); } 使用Message属性和ToString方法: Message属性提供一个包括描述性错误消息 的短字符串。 ToString方法返回一个包含数行的字符串。 try { operator1 = Convert.ToInt32(textBox1.Text); operator2 = Convert.ToInt32(textBox2.Text); result = checked(operator1 / operator2); textBox3.Text = Convert.ToString(result); } catch (System.Exception ex) { MessageBox.Show(输入错误: + ex.Message, 错误提示, MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } 通过一个try可使用多个捕获块。这样做的原则是必须将较为具体的catch放在前面,后跟较为一般的情况。 当异常发生时,C#有哪些信誉好的足球投注网站当前的

文档评论(0)

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

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

1亿VIP精品文档

相关文档