欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    调试、测试和异常处理TPnew9.ppt

    • 资源ID:67584084       资源大小:2.08MB        全文页数:33页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    调试、测试和异常处理TPnew9.ppt

    ACCP V4.0第九章第九章调试、测试和异常处理ACCP V4.0回顾 qWinForms单选按钮控件允许用户进行设置qWinForms的图片框控件允许用户在窗体上添加和显示位图、元文件、JPEG、GIF 或 PNG 等格式的图形qWinForms的选项卡控件将类似的功能集中在一起,放在一个对话框或窗口中qWinForms的 HScrollBar 和 VScrollBar 用作水平和垂直滚动条,分别以水平和垂直方式浏览(或滚动)整个文档q进度条控件用于指示操作的进度,并显示排列在水平条中一定数目的矩形,通常通过在程序中设置其Value值来显示任务完成的百分比2ACCP V4.0目标q理解如何调试应用程序和排除错误q掌握如何测试 C#应用程序q了解测试和调试的区别q在程序中进行错误捕获和错误处理3ACCP V4.0简介应用程序开发可以安装在客户端机器上应用程序必须无错误无故障 可靠稳健查找和排除查找和排除错误或故障称为错误或故障称为调试调试4ACCP V4.0调试的必要性 在事物处理过程中,系统显示错误消息系统发生故障系统发生故障必须重新输入全部信息在部署应用程序前必须先对其进行调试5ACCP V4.0错误类型错误类型语法错误逻辑错误运行时错误l语法错误、缺少括号等l在编译时确定l易于确定l错误的算法导致错误结果、公式错误等 l在执行过程中确定l难以调试l内存泄漏、以零作除数、异常l在运行时确定l难以调试6ACCP V4.0调试过程 5-1调试器观察程序的运行时行为 跟踪变量的值确定语义错误的位置查看寄存器的内容查看内存空间 7ACCP V4.0调试过程 5-2暂停暂停可在代码中插入“断点”,以便在特定行处暂停执行该代码8ACCP V4.0调试过程 5-3右键单击所需代码行,以设置断点选择“插入断点”9ACCP V4.0调试过程 5-4选择“调试”“继续”以便继续执行程序10ACCP V4.0调试过程 5-5.NET 集成开发环境Debug模式Release模式11ACCP V4.0 VS.NET 中的调试工具 5-1“局部变量”窗口12ACCP V4.0 VS.NET 中的调试工具 5-2“监视”窗口13ACCP V4.0 VS.NET 的调试工具 5-3“快速监视”对话框14ACCP V4.0 VS.NET 中的调试工具 5-4“即时”窗口15ACCP V4.0 VS.NET 中的调试工具 5-5l跨语言调试 l调试使用.NET 框架编写的应用程序以及 Win32 本l 机应用程序l加入正在运行的程序l调试多个程序Visual Studio.NET 调试器的功能16ACCP V4.0异常帐户帐户姓名姓名 余额余额300123张三300124王五47,000311320李四网上银行网上银行张三转帐25000到李四的帐面上020,000数据库系统将查询发送到数据库中系统将查询发送到数据库中tranfer_money()sendquery();.余额 20000-25000 程序崩溃程序崩溃拒绝交易拒绝交易错误错误 系统出现故障系统出现故障“C#”中的异常 17ACCP V4.0C#中的异常处理2-1.INPUT DivisorIF Divisor=0 THENResult=Divident/Divisor.代码片段 1输入除数结果=_0 24GOTO PREVIOUS LINE触发异常处理程序18ACCP V4.0 C#中的异常处理2-2.INPUT DivisorResult=Divident/Divisor.代码片段 1“用户自定义”错误检查机制难以检查输入的任何难以检查输入的任何“特殊字符特殊字符”IF Divisor=0 THEN GOTO PREVIOUS LINEIF Divisor 0 THEN PRINT“无效输入”运行库运行库运行库应当提供“错误检查机制”19ACCP V4.0System.Exception 3-120ACCP V4.0System.Exception 3-2属性属性MessageSourceStackTraceInnerException21ACCP V4.0System.Exception 3-3在 C#程序中,引发异常共有以下两种方式l使用显式 throw 语句来引发异常。在此情况下,控制权将无条件转到处理异常的部分代码l使用语句或表达式在执行过程中激发了某个异常的条件,使得操作无法正常结束,从而引发异常Try.Catch.Finally22ACCP V4.0try 和 catch 块 4-1滤水器滤水器filter_water()try water();catch impurities.Show();.过滤水杂质/程序代码/错误处理代码 try/程序代码catch(IOException E)/错误处理代码23ACCP V4.0try 和 catch 块 4-2try/程序代码catch(IOException E)/错误处理代码I/O 设备可以生成错误24ACCP V4.0try 和 catch 块 4-3try/程序代码catch(E)/错误处理代码可处理系统中的任何一种异常System.Exception25ACCP V4.0try 和 catch 块 4-4 if(UserInput 100)throw new InvalidNumberInput(UserInput+“不是有效输入(请输入 1 和 100 之间的数字)”);throw 可用来引发自定义异常“InvalidNumberInput”26ACCP V4.0使用 finallytry/程序代码catch/错误处理代码finally/finally 代码无论控制流如何都会执行27ACCP V4.0多重 catch 块 2-1try/程序代码catch(IOException E)/错误处理代码catch(OutOfMemoryException E)/错误处理代码用于捕捉两种异常的“catch”块28ACCP V4.0多重 catch 块 2-2public class MyCustomException:System.ApplicationExceptionpublic MyCustomException(string message):base(message)try quotient=dividend/divisor;catch(MyCustomExeption ex)Console.WriteLine(ex.Message);.if(divisor=0)throw new MyCustomException(“除数不能为零);29ACCP V4.0示例-建立自定义异常using System;public class EmailErrorException:ApplicationExceptionpublic string _message;/重写构造函数public EmailErrorException():base()_message=null;public EmailErrorException(string message):base()_message=message.ToString();public EmailErrorException(string message,Exception myNew):base(message,myNew)_message=message.ToString();/Message属性的重载public override string Messagegetreturn Email格式错误。;30ACCP V4.0示例-throw自定义异常private bool SaveInfo(string name,string email)string subStrings=email.Split();/如果输入的Email不是被“”字符分割成两段,则抛出Email错误异常if(subStrings.Length!=2)throw new EmailErrorException();elseint index=subStrings1.IndexOf(.);/查找被“”字符分成的两段的后一段中“.”字符的位置,没有“.”/或者“.”字符是第一个字符,则抛出EmailErrorException异常if(index=0)throw new EmailErrorException();/如果“.”字符是最后一个字符,抛出EmailErrorException异常if(subStrings1subStrings1.Length-1=.)throw new EmailErrorException();return true;31ACCP V4.0示例-Catch自定义异常private void btnSubmit_Click(object sender,System.EventArgs e)if(txtName.Text.Length=0&txtEmail.Text.Length=0)MessageBox.Show(请填写姓名和Email。,填写不完整,MessageBoxButtons.OK,MessageBoxIcon.Information);return;trySaveInfo(txtName.Text,txtEmail.Text);catch(EmailErrorException ex)MessageBox.Show(ex.Message,Email 格式错误,System.Windows.Forms.MessageBoxButtons.OK,MessageBoxIcon.Information);return;MessageBox.Show(保存成功。,成功,MessageBoxButtons.OK,MessageBoxIcon.Information);32ACCP V4.0总结q调试是搜寻和消除应用程序中的错误的过程q语法错误表示编译器无法理解代码q调试模式可用来重复编译和排除应用程序中的错误,直至能够成功运行q“局部变量”窗口允许用户监控当前程序中所有变量的值q单元测试和集成测试是测试大型应用程序的常用技术q当应用程序遇到运行时错误时,就会引发异常qC#中的所有异常都派生自 Exception 类33

    注意事项

    本文(调试、测试和异常处理TPnew9.ppt)为本站会员(s****8)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开