版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第九章程序的调试与异常处理*第一页,共二十页,编辑于2023年,星期四本章内容:9.1程序的错误类型9.2程序的调试9.3程序的异常处理第二页,共二十页,编辑于2023年,星期四学习目标程序的错误类型程序的调试程序的异常处理第三页,共二十页,编辑于2023年,星期四9.1程序的错误类型可以将这些错误分为四类,分别是:语法错误编译错误运行错误逻辑错误第四页,共二十页,编辑于2023年,星期四9.2程序的调试一.VB.NET的调试工具可以通过【调试】菜单,也可以使用【调试】工具栏。可按下面的步骤打开【调试】工具栏。1.选择【视图】→【工具栏】菜单项。2.在【工具栏】下的子菜单中选择【调试】命令,【调试】工具栏会出现。第五页,共二十页,编辑于2023年,星期四二.常用的调试对话框错误列表窗口输出窗口【立即】对话框【监视】对话框【局部变量】对话框【Me】对话框第六页,共二十页,编辑于2023年,星期四1.错误列表窗口在VB.NET中,如果开发人员的应用程序中存在没有清除的语法错误,在调试时,调试程序会查找到这些语法错误,并将错误信息显示在【错误列表】窗口中。【错误列表】窗口不但显示出错误的类型和说明,还显示出错的文件,以便开发人员快速定位和修改错误。如果要马上修改某一个错误,可以在错误列表中双击它,IDE会自动跳转到代码窗口中,并加亮显示相应的错误内容。打开“错误列表”窗口:选择【视图】→【错误列表】第七页,共二十页,编辑于2023年,星期四2.输出窗口VisualBasic.NET把【输出】窗口的功能分为两部分:调试和生成。在【输出】窗口中,从【生成】选项可以查看调试的程序生成的内容,包括成功的个数和失败的个数。如果没有生成失败,表明程序创建成功。如果开发人员要查看调试输出结果,可从【输出】窗口中的下拉列表框中选择【调试】选项,窗口中就显示出所有已经加载的内容和输出结果。第八页,共二十页,编辑于2023年,星期四3.立即窗口VisualBasic.NET中,有一个【命令】对话框,在该对话框中可以直接使用VB.NET的各种命令与系统交互。【命令】对话框有两种不同的模式:命令模式和立即模式。命令模式主要用来执行命令,立即模式主要用于调试程序。在调试应用程序执行函数或语句等操作时,可使用立即模式查看,并更改变量的值。通过执行【调试】→【窗口】→【即时】命令,可以以立即模式打开【命令】对话框。第九页,共二十页,编辑于2023年,星期四4.【监视】对话框【监视】对话框用于显示当前被监视表达式的值。【监视】对话框是最有用的对话框之一,在逐语句运行的情况下,通过该对话框可以看到每执行一条语句时,监视表达式值的变化情况。【监视】对话框只能在运行模式或中断模式下打开,打开方法是执行【调试】→【窗口】→【监视】命令。若要在【监视】对话框中添加被监视表达式,只需单击【监视】对话框[名称]列最下面一行单元格,在其中输入要监视的表达式即可。第十页,共二十页,编辑于2023年,星期四5.局部变量对话框【局部变量】对话框可显示当前过程中所有局部变量的值。当程序从一个过程执行到另一个过程时,【局部变量】对话框的内容也会随之改变。该对话框只显示当前所执行过程中局部变量的值。要打开【局部变量】对话框,可执行【调试】→【窗口】→【局部变量】命令。6.【Me】对话框【Me】对话框用于显示在窗体类中定义的变量和对象的当前值。第十一页,共二十页,编辑于2023年,星期四三.调试方法1.设置程序断点断点是应用程序暂时停止执行的位置,也是让应用程序进入中断模式的地方。在程序设计中,可以在中断模式和设计模式下设置和删除断点。在调试程序时,按照程序的功能,可在怀疑有错误的语句处设置断点,这样有利于发挥测试程序的功能和发现程序的逻辑错误。设置断点的方法:1)在代码窗口中,单击要设置断点的那一行代码,然后按【F9】键。2)在代码窗口中,在要设置断点的那一行代码行上,单击鼠标右键并选择【插入断点】命令。3)在代码窗口中,在要设置断点的那一行代码行的左边界上的竖条上单击。第十二页,共二十页,编辑于2023年,星期四2.跟踪程序执行当程序出错的具体位置不易确定,只能够猜测到在某个范围内可能存在问题时,需要在此范围内追踪程序的执行结果,逐条地执行语句。这种运行方式称为”跟踪”。VB.NET提供的跟踪方式有:逐语句(StepInto):逐语句执行方式为一次执行一条语句,也叫单步执行。每执行一条语句之后,开发人员可以使用【即时】窗口、【局部变量】窗口或【监视】窗口查看语句执行的效果。逐过程(StepOver):编写复杂的应用程序时,应用程序的一个过程通常会调用另一个过程或函数,有时候,并不想了解调用过程的执行细节,而只想关注当前过程的执行情况,可以使用【逐过程】命令。
跳出(StepOut):【跳出】命令连续执行当前过程剩余部分的语句,并在调用该过程的下一行处中断执行。第十三页,共二十页,编辑于2023年,星期四9.3程序的异常处理一.非结构化的异常处理非结构化异常处理通过Err对象和OnError,Resume语句来实现。1.Err对象在VisualBasic中,产生的异常信息都会反映在一个对象中,这个对象就是Err。通过这个对象就可以获取异常的所有信息,如异常码、异常的信息描述等。Err对象是一个具有全局范围的固有对象,用户不必在程序中重新定义它。Err对象最常用的属性是Description属性和Number属性。Description属性表示异常的信息,Number属性表示异常码,它是1~32767之间的整数。第十四页,共二十页,编辑于2023年,星期四2.OnError语句OnError语句放在代码块的开始处,它将处理在该块内发生的任何错误。如果在执行OnError语句后过程中引发了异常,程序流程将跳转到OnError语句中指定的位置。常用的语句形式:1)OnErrorGoToLine作用:如果发生运行时错误,则将流程跳转到该Line参数中指定的行号和行标签,并激活错误处理程序。说明:指定行必须与OnErrorGoToLine语句位于同一过程中。2)OnErrorResumeNext作用:若当前行有错,程序将继续执行代码的下一行,而忽略当前的异常。第十五页,共二十页,编辑于2023年,星期四二.结构化异常处理Try…Catch…Finally控制结构是结构化异常处理的基本结构。它测试代码片段,筛选执行过程中产生的异常,根据产生的异常类型做出不同的响应。语法格式:
Try[tryStatements][Catch[exception[Astype]][Whenexpression][catchStatements]]
[ExitTry]…
[Finally[finallyStatements]]
EndTry第十六页,共二十页,编辑于2023年,星期四说明:tryStatements:可能发生错误的语句。Catch:可以有多个catch块,如果在处理try块期间发生异常,则按文本顺序检查每个catch语句,以确定它是否处理该异常。Exception:表示已引发异常。任何变量名称。其初始值是引发的错误的值。它将与catch一同使用以指定所捕获的错误。Type:指定类筛选器的类型,如果Exception的值是type指定的类型的值,则该标示符将绑定到异常对象。Whenexpression:当expression结果为true时,捕获异常。catchStatements:处理相关的try块中所发生错误的语句。ExitTry:中断try…catch…finally结构。如果有finally块,则转到finally块继续执行。Finally:在执行离开try语句的任何部分时执行。finallyStatements:在所有其他错误处理结束后执行的语句。第十七页,共二十页,编辑于20
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026河南郑外集团郑开学校附中教师招聘1人备考题库【必考】附答案详解
- 2026江苏南京大学SZXZ2026-009生物医学工程学院科研人员招聘备考题库附答案详解【a卷】
- 2026年珠海市珠光集团控股有限公司校园招聘笔试模拟试题及答案解析
- 2026江苏无锡鑫山北投资管理有限公司招聘2人备考题库及答案详解(考点梳理)
- 2026广西柳州市鱼峰区洛埠镇卫生院招聘2人备考题库附答案详解(基础题)
- 2026西藏阿里地区日土县审计局招聘3名备考题库(突破训练)附答案详解
- 2026广东中山市市场监督管理局民众分局招聘见习人员2人考试参考题库及答案解析
- 2026年山西电信校园招聘笔试模拟试题及答案解析
- 2026西安现代控制技术研究所中层领导人员招聘1人考试参考题库及答案解析
- 2026湖北黄石市阳新县高中学校校园招聘教师26人备考题库(综合题)附答案详解
- 中小学教师绩效工资分配激励研究-基于 2024 年中小学教师绩效工资实施办法
- 2026春统编版一年级下册语文第二单元测试卷及答案
- 推拿店岗位责任制度模板
- 智能驾驶专题之四:2026智驾展望:向上升阶与向下平权的双轨渗透
- 2026年淮南职业技术学院单招职业适应性测试题库带答案详解
- 2026年汕头市普通高考第一次模拟考试 英语+答案
- 初中语文中考主旨探究与表达题知识清单
- 2026年宝山区国有(集体)企业招聘笔试参考题库附带答案详解
- 2026复工复产安全培训第9版
- 储能工程项目验收标准
- 2026年微机电系统(MEMS)设计原理
评论
0/150
提交评论