C学习第8章 异常处理数学

上传人:鲁** 文档编号:591468447 上传时间:2024-09-17 格式:PPT 页数:10 大小:129.56KB
返回 下载 相关 举报
C学习第8章 异常处理数学_第1页
第1页 / 共10页
C学习第8章 异常处理数学_第2页
第2页 / 共10页
C学习第8章 异常处理数学_第3页
第3页 / 共10页
C学习第8章 异常处理数学_第4页
第4页 / 共10页
C学习第8章 异常处理数学_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《C学习第8章 异常处理数学》由会员分享,可在线阅读,更多相关《C学习第8章 异常处理数学(10页珍藏版)》请在金锄头文库上搜索。

1、第8章 异常处理我们编写程序的时候,总是希望程序按照自己的意愿工作,但是总可能发生意外,有些意外在编写代码的时候是检查不到的,更有些意外是因为软件所处的环境改变所致。为了提前预防意外的发生,C#提出了异常处理机制,非常聪明地处理这些事情。本章主要涉及到的知识点有:了解什么是异常,以及C#的异常处理机制。C#常用的异常。用try、catch和finally关键字捕获异常。用throw关键字抛出异常。自定义异常。8.1 为什么要异常处理在开发过程中,我们可以通过程序调试和代码走查来修改程序代码错误。但是程序在运行过程中,往往会遇到一些运行时错误。异常是面向对象编程中用于处理程序错误的有效机制。C#

2、语言本身提供了很好的异常处理机制,充分体现了语言的健壮性。8.1.1 程序的异常【本节示例参考:源代码chapter88.1.1ExceptionExample】我们公司在7楼,下班以后,和同事一起出门,当时电梯还没有到,同事要求走楼梯,我坚持坐电梯,因为一般情况坐电梯都比走楼梯快,但是等坐上电梯以后,电梯出了故障,等我下楼以后,同事早已经在下面等着我了。这是生活中的一个异常。那么,程序中的异常又是怎样的呢?首先,来看一个例子。程序员输入如下的代码逻辑,希望得到输出的结果。int val = 10; /定义变量ifor (int i = 5; i 0; i-) val = i/val; /改变

3、变量值 Console.WriteLine(val =0, val);8.1.2 处理C#中的异常【本节示例参考:源代码chapter88.1.2ExceptionExample】和同事下楼以后,同事幸灾乐祸的地说我坐电梯没他走楼梯快。我说是啊,如果我知道电梯要坏的话,就跟他走楼梯了。可是我之前根本无法知道电梯会坏。生活中经常发生这种不可预测的意外。程序中也一样,总可能发生异常。异常是在程序运行过程中发生的,如图8.2演示了异常处理流程。8.2 捕获异常C#语言提供了异常处理的语法支持,C#通过关键字try、catch和finally来执行异常处理。同时可以通过关键字throw抛出异常,让程序

4、上一级或者系统本身来处理抛出的异常。理解了异常处理,只是应用异常的第一步,下面的工作就是捕获异常,并对异常进行处理。同时,读者还可以根据自己的需要自定义异常。8.2.1 trycatchfinally语句【本节示例参考:源代码chapter88.2.1ExceptionExample】继续以坐电梯和走楼梯的故事为例,走楼梯是一种非常保险的方式,不需要考虑有意外的发生;坐电梯就有可能遇到电梯发生故障,但是坐电梯要快一些。所以这样考虑这件事情:我试图坐电梯,如果遇到故障,就按警报!按照编程的逻辑重新组织一下语言,如下所示:试图 坐电梯遇到(故障) 按警报最终 到了楼下8.2.2 抛出异常【本节示例

5、参考:源代码chapter88.2.2ExceptionExample】前面演示了如何使用trycatchfinally语句捕获程序异常,这种异常通常只在代码出现错误的时候发生。其实,还可以在代码中显示的抛出异常,方法是使用关键字throw。下面我们编写一个程序,代码如下:8.2.3 自定义异常【本节示例参考:源代码chapter88.2.3ExceptionExample】合理地编写自定义异常类有助于更精确的捕获异常,而不是笼统地认为所有的异常都归结于.NET Framework中定义的Exception类或其已经定义好了的类型。8.3 小结本章讲解了异常处理,大家通过对本章的学习,能够充分

6、地了解.NET Framework的异常处理机制,使用.NET Framework自带的异常类处理程序,也可以自定义异常类处理程序。通过本章,读者学习了以下内容:(1)异常是程序运行时错误,发生异常时,程序将意外终止,并将控制权返回给操作系统。(2)C#常用的异常处理类派生自System.Exception基类。(3)C#用try、catch和finally关键字捕获异常。用throw关键字抛出异常。本章习题一、选择题1下列关于trycatchfinaly语句的说明中,不正确的是( )Acatch块可以有多个Bfinaly块是可选的Ccatch块也是可选的D可以只有try块2为了能够在程序中捕获所有的异常,在catch语句的括号中使用的类名为( )AExceptionBDivideByZeroExceptionCFormatExceptionD以上三个均可3关于异常,下列的说法中不正确的是( )A用户可以根据需要抛出异常B在被调用方法可通过throw语句把异常传回给调用方法C用户可以自己定义异常D在C#中有的异常不能被捕获二、简答题简述为什么要进行异常捕获。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号