C#程序设计简明教程-第5章 程序调试与异常处理

C#程序设计简明教程-第5章 程序调试与异常处理

ID:41032194

大小:191.96 KB

页数:8页

时间:2019-08-14

C#程序设计简明教程-第5章 程序调试与异常处理_第1页
C#程序设计简明教程-第5章 程序调试与异常处理_第2页
C#程序设计简明教程-第5章 程序调试与异常处理_第3页
C#程序设计简明教程-第5章 程序调试与异常处理_第4页
C#程序设计简明教程-第5章 程序调试与异常处理_第5页
资源描述:

《C#程序设计简明教程-第5章 程序调试与异常处理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、第五章程序调试与异常处理一、调试   开发应用程序后,必须确保其开发的成果无错误、无故障、可靠和稳健。当然,一些实际的项目是不能保证完全没有错误,但程序员要保证尽力发现软件存在的错误信息并修正这些错误。   查找和排除错误或故障的过程称为调试。在部署应用程序前必须先对其进行调试,常见的错误信息有以下三种:  语法错误:如常见的语法错误、缺少括号等,这类错误在编译时确定,并且也容易更正。   逻辑错误:一般是由于错误的算法引起的,如结果不对、公式不对等,这类错误在执行过程时出现,难以调试  运行时错误:在运行是出现,如内存泄漏、以零作除数、异常等,难以调

2、试。l  如何调试  n 利用.NET提供的调试器,其功能有:   Ø 观察程序的运行时行为     Ø 跟踪变量的值    Ø 确定语义错误的位置    Ø 查看寄存器的内容   Ø 查看内存空间    Ø 跨语言调试:可以调试使用VB.NET、VC++.NET等以及和sql编写的程序    Ø 调试使用.NET 框架编写的应用程序以及Win32本机应用程序    Ø 加入正在运行的程序    Ø 调试多个程序  n 大致过程  n 设置断点  n调试模式运行:编译有两种手段。    Ø 调试模式:可用来重复编译应用程序和排除错误,直至能够成功运行。

3、    Ø 发布模式:当应用程序无需重复编译即可发布时,再改成发布模式编译,然后发布。l 调试工具  n“局部变量”窗口      显示当前作用域下的变量并跟踪他们的值,控制权一旦转移到其他方法,则系统会自动清除列出的变量,显示当前方法的变量。如图1所示:图1局部变量窗口  n“监视”窗口      用计算变量和表达式的值,并跟踪他们的变化。如图2所示 n“快速监视”对话框      快速计算变量和表达式的值。如图3所示  n“即时”窗口       用于检查变量的值,给变量赋值以及运行一行代码。要查找变量的值,必须在变量名前加“?”。如图4所示图2监

4、视窗口图3快速监视对话框图4即时窗口二、异常    一个性能良好且稳健的程序应该允许异常情况发生、避免终止运行,这就要求编程人员能够预知可能发生的特情况,并且在程序编码处理这些特殊情况,我们称这个过程叫“异常处理”或“错误处理”。   如下列代码在执行过程会出现“算术除0”这样的异常:       INPUTDivisor        IFDivisor=0THEN        Result=Divident/Divisor        ....        System.Exception    .NETFramework提供了很多处理异常的

5、类,如图5所示:图5Exception类的层次结构l Exception类的属性 n Message:描述错误信息 n Source:显示异常发生时的应用程序或对象名 n StackTrace:显示异常发生时的堆栈信息 n InnerException:对内部异常的引用l 引发异常的方式 n 使用显式throw语句来引发异常。在此情况下,控制权将无条件转到处理异常的部分代码 n 使用语句或表达式在执行过程中激发了某个异常的条件,使得操作无法正常结束,从而引发异常l try和catch块 n 格式:           try            { 

6、             //可能发生异常的程序代码            }            catch(异常对象1)            {               //错误处理程序            }            catch(异常对象2)            {               //错误处理程序            }            finally            {              //不管异常有无发生都要执行的代码            } n 执行流程如图6所示图6执行流程

7、 n 示例1:          try          {               //程序代码           }           catch(System.ExceptionE)//可以处理各种异常           {              //错误处理代码           } n 示例2:          try          {              //程序代码           }          catch(IOExceptionE)//捕捉IO异常          {             

8、 //错误处理代码          }l 使用throw引发异常   使用throw可以引发

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。