- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 程序调试与异常处理 本章导读 本章分析了程序异常类型、程序调试的基本方法和程序异常的处理。VB.NET中对异常的处理可以使用结构化的处理结构(Try结构,推荐使用),也可以使用非结构化的处理结构(On Error结构,与VB.NET以前版本兼容)。 8.1 程序错误类型 在程序设计或编写代码过程中,无论初学者或资深程序员,无论如何细心,发生错误总是难免的。程序中的错误,即“异常”,通常称为“Bug”。发现程序中的错误并进行修复的过程,称为“调试”。程序总是在不断调试和测试中完善的。 编程错误通常分为三类:编译错误、运行时错误和逻辑错误。 1. 编译错误 编译错误又称为“编译器错误”,是指无法使程序正常启动运行 的错误,是一种最容易发现并修改的错误。用VB.NET编写代码时,以波浪线形式提醒出现错误的代码行,将鼠标移动到出现波浪线上方面,将出现错误提示。 一般可能出现错误的原因:变量在定义前使用;调用函数或过程参数个数或类型不匹配;对象参与不具备运算符的运算等。 案例8-1 变量定义前使用的错误。设某程序出现编译错误如图8-1所示。 图8-1 编译错误示例 如果此时按F5运行程序,将弹出错误提示对话框,如图8-2所示。 图8-2 编译错误对话框 单击“否”按钮,可以从“错误列表”对话框中看到错误的原因,如图8-3所示。 图8-3 “错误列表”对话框 2. 运行时错误 运行时错误是程序运行时发生的错误。这种错误通常是初学者最容易犯的错误,原因是程序对用户任意可能操作或特殊的运行环境没有进行判断,程序设计过程没有错误,按正常操作也不会出现错误,这些错误通常是在程序试图执行不可能执行的操作时发生。 案例8-2 输入0~100的分数,判断分数等级。 [窗体布局] 在窗体放置一个文本框和一个按钮,名称默认。 [程序代码] Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim score As Integer score = TextBox1.Text If score = 90 Then MsgBox( “优秀“ ) ElseIf score = 80 Then MsgBox( “良“ ) ElseIf score = 70 Then MsgBox( “中“ ) ElseIf score = 60 Then MsgBox( “及格“ ) Else MsgBox( “不及格“ ) End If End Sub [运行结果] ⑴正确输入分数,如90,按F5运行程序,结果正确,如图8-4所示。 图8-4 案例8-2正常运行结果 ⑵假定用户输入数字30时,不小心把数字“0”输入为字母“O”,则出现运行错误,如图8-5与图8-6所示。 图8-5 错误的输入 图8-6 “异常助手” 对话框 [错误原因] 文本框Text属性默认是字符串类型,字符串类型赋予数字类型时,最好进行显式转换。在赋值前,最好判断文本框中输入的数据是否数字(IsNumeric函数)类型,再进行赋值。 3. 逻辑错误 逻辑错误是程序能够通过编译并且可以顺利运行,运行过程也没有错误提示,但运行结果不是所期待的。逻辑错误是最难查找和修复的错误。 案例8-3 求两数相加的结果。 [界面布局] 在窗体放置三个文本框和两个标签控件,一个按钮控件,如图8-7所示。 图8-7 案例8-3界面布局 TextBox1 TextBox2 TextBox3 Button1 [程序代码] Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click TextBox3.Text = TextBox1.Text + TextBox2.Text End Sub End Class [运行结果] 图8-8 案例8-3运行结果 [错误原因] 字符串类型数据执
您可能关注的文档
- UML与系统分析设计 (4).ppt
- UML与系统分析设计 (5).ppt
- UML与系统分析设计 (6).ppt
- UML与系统分析设计 (7).ppt
- UML与系统分析设计 (8).ppt
- UML与系统分析设计 (9).ppt
- UML与系统分析设计 (10).ppt
- UML与系统分析设计 (11).ppt
- UML与系统分析设计 (12).ppt
- UML与系统分析设计 (13).ppt
- Visual BasicNET 程序设计第二章.ppt
- Visual BasicNET 程序设计第九章.ppt
- Visual BasicNET 程序设计第六章.ppt
- Visual BasicNET 程序设计第七章.ppt
- Visual BasicNET 程序设计第三章.ppt
- Visual BasicNET 程序设计第四章A.ppt
- Visual BasicNET 程序设计第四章B.ppt
- Visual BasicNET 程序设计第五章.ppt
- Visual BasicNET 程序设计第一章.ppt
- Visual BasicNET案例化教程第1章 Visual Basic.NET 概述.ppt
文档评论(0)