书签 分享 收藏 举报 版权申诉 / 20
上传文档赚钱

类型异常处理和应用程序打包课件.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4374320
  • 上传时间:2022-12-03
  • 格式:PPT
  • 页数:20
  • 大小:487.05KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《异常处理和应用程序打包课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    异常 处理 应用程序 打包 课件
    资源描述:

    1、信息管理与信息系统班信息管理与信息系统班l14.1.1 用用trycatch语句捕获异常语句捕获异常 正常情况下,程序流进入正常情况下,程序流进入try控制块,如果没有错误发生控制块,如果没有错误发生,就会正常操作。当程序流离开,就会正常操作。当程序流离开try控制块后,如果没有发生控制块后,如果没有发生错误,将执行错误,将执行catch后的后的finally语句块或顺序执行;当执行语句块或顺序执行;当执行try时发生错误,程序流就会跳转到相应的时发生错误,程序流就会跳转到相应的catch语句块。语句块。【例11-1】trycatch语句结构使用示例。在TextBox控件中接收两个数,单击【计

    2、算】按钮,显示这两个数的商。要求使用trycatch语句结构识别并处理由除数或被除数为非数字引发的异常、由除数为零引发的异常。【计算计算】按钮被单击时执行的事件过程代码如下:按钮被单击时执行的事件过程代码如下:private void button1_Click(object sender,private void button1_Click(object sender,EventArgsEventArgs e)e)intint a,b,c;a,b,c;/声明变量声明变量 try /try /试图捕获异常试图捕获异常 /将文本转换为将文本转换为Int32Int32类型的整数类型的整数 a=Co

    3、nvert.ToInt32(textBox1.Text);a=Convert.ToInt32(textBox1.Text);catch /catch /发生异常时的处理发生异常时的处理 label3.Text=label3.Text=提示:请将被除数的值输入为数字!提示:请将被除数的值输入为数字!;return;return;try b=Convert.ToInt32(textBox2.Text);catch label3.Text=提示:请将除数的值输入为数字!提示:请将除数的值输入为数字!;return;try c=a/b;catch(DivideByZeroException)/如果发生

    4、除数为如果发生除数为0的异常的异常 label3.Text=提示:除数不能为提示:除数不能为!;return;/正确运行时显示运算结果正确运行时显示运算结果 label3.Text=两数的商为:两数的商为:+c.ToString();l11.1.2 用用tryfinally语句清除异常语句清除异常有时可能希望在程序运行时,要求清除异常而不是错误处理。有时可能希望在程序运行时,要求清除异常而不是错误处理。若希望使程序在出现异常时继续执行,且不显示出错信息。若希望使程序在出现异常时继续执行,且不显示出错信息。此时可以使用此时可以使用try-finally语句实现清除异常。它不仅抑制了出错语句实现清

    5、除异常。它不仅抑制了出错消息,而且所有包含在消息,而且所有包含在finally块中的代码在异常被引发后仍块中的代码在异常被引发后仍然会被执行。然会被执行。【例例14-2】设计一个设计一个Windows应用程序,用来检查指定文件是应用程序,用来检查指定文件是否存在。要求无论文件存在与否,程序均能正常结束并显示否存在。要求无论文件存在与否,程序均能正常结束并显示“感谢使用本软件感谢使用本软件”的信息框。的信息框。文件存在或不存在的程序运行结果文件存在或不存在的程序运行结果【检查检查】按钮被单击时执行的事件过程代码如下:按钮被单击时执行的事件过程代码如下:private void button1_C

    6、lick(object sender,EventArgs e)try /判断文件是否存在判断文件是否存在 if(File.Exists(textBox1.Text)label2.Text=该文件存在该文件存在;else label2.Text=该文件不存在该文件不存在;finally /无论是否发生异常,都正常结束无论是否发生异常,都正常结束 MessageBox.Show(感谢使用本软件感谢使用本软件!,程序结束程序结束);l11.1.3 trycatchfinally语句结构语句结构l前面介绍的前面介绍的trycatch结构和结构和tryfinally结构分别用来捕获结构分别用来捕获处理异

    7、常和清除异常。本节介绍的处理异常和清除异常。本节介绍的trycatchfinally结构能结构能将上述二者结合起来,使之成为一个整体。将上述二者结合起来,使之成为一个整体。l【例例14-3】在在【例例14-1】的基础上修改的基础上修改【计算计算】按钮单击事按钮单击事件过程的代码如下:件过程的代码如下:private void button1_Click(object sender,EventArgs e)int a,b,c;try /试图捕获异常试图捕获异常 /将文本转换为将文本转换为Int32类型的整数类型的整数 a=Convert.ToInt32(textBox1.Text);b=Conv

    8、ert.ToInt32(textBox2.Text);c=a/b;label3.Text=两数的商为:两数的商为:+c.ToString();catch(FormatException)/处理转换发生的异常处理转换发生的异常 label3.Text=请将被除数或除数的值输入为数字!请将被除数或除数的值输入为数字!;catch(DivideByZeroException)/处理除数为零的异常处理除数为零的异常 label3.Text=除数不能为零!除数不能为零!;finally /清除异常清除异常 MessageBox.Show(感谢使用本软件,程序正常结束感谢使用本软件,程序正常结束);11.

    9、1.4 抛出异常和常用异常类抛出异常和常用异常类1.抛出异常抛出异常在程序设计时可能需要有意的引发某种异常,以测试程序在不在程序设计时可能需要有意的引发某种异常,以测试程序在不同状态下的运行情况。同状态下的运行情况。Visual Sdudio 2005提供的提供的throw方法方法就是专门用于人为引发异常的。就是专门用于人为引发异常的。通常将这种主要用于测试程序的、能够自动引发异常的方法称通常将这种主要用于测试程序的、能够自动引发异常的方法称为为“抛出异常抛出异常”。例如下列代码将在程序运行时引发一个除数为零的异常。例如下列代码将在程序运行时引发一个除数为零的异常。throw new Divi

    10、deByZeroException();2.常用的异常类常用的异常类 lMemberAccessException:访问错误:类型成员不能被访问访问错误:类型成员不能被访问lArgumentException:参数错误:方法的参数无效参数错误:方法的参数无效lArgumentNullException:参数为空:给方法传递一个不可接受的空参数参数为空:给方法传递一个不可接受的空参数lArithmeticException:数学计算错误:由于数学运算导致的异常,覆盖面数学计算错误:由于数学运算导致的异常,覆盖面广广lArrayTypeMismatchException:数组类型不匹配数组类型不匹

    11、配lDivideByZeroException:被零除被零除lFormatException:参数的格式不正确参数的格式不正确 lIndexOutOfRangeException:索引超出范围,小于索引超出范围,小于0或比最后一个元素的或比最后一个元素的索引还大索引还大lInvalidCastException:非法强制转换,在显式转换失败时引发非法强制转换,在显式转换失败时引发lMulticastNotSupportedException:不支持的组播:组合两个非空委派失不支持的组播:组合两个非空委派失败时引发败时引发lNotSupportedException:调用的方法在类中没有实现调用

    12、的方法在类中没有实现lNullReferenceException:引用空引用对象时引发引用空引用对象时引发lOutOfMemoryException:无法为新语句分配内存时引发,内存不足无法为新语句分配内存时引发,内存不足lOverflowException:溢出溢出lStackOverflowException:栈溢出栈溢出 lTypeInitializationException:错误的初始化类型:静态构造函数有问题时错误的初始化类型:静态构造函数有问题时引发引发 lNotFiniteNumberException:无限大的值:数字不合法无限大的值:数字不合法11.1.5 用户自定义异常

    13、用户自定义异常对于某些特殊情况,程序员可以通过继承对于某些特殊情况,程序员可以通过继承Exception来创建自己来创建自己的异常类。的异常类。声明一个异常类的语法格式如下:声明一个异常类的语法格式如下:class ExceptionName:Exception引发自定义异常的格式如下:引发自定义异常的格式如下:throw(ExceptionName);11.2 部署Windows应用程序l11.2.1 生成安装包生成安装包l打开设计完成的项目,打开设计完成的项目,“文件文件”菜单菜单“添加添加”下的下的“新建项新建项目目”命令。在对话框命令。在对话框“项目类型项目类型”列表中选择列表中选择“

    14、安装和部署安装和部署”,在模板列表中选择,在模板列表中选择“安装向导安装向导”,单击,单击【确定确定】按钮启按钮启动动“安装项目向导安装项目向导”。l在在“欢迎欢迎”界面中直接单击界面中直接单击【下一步下一步】按钮,在对话框中选按钮,在对话框中选择择“为为Windows应用程序创建一个安装程序应用程序创建一个安装程序”后单击后单击【下一下一步步】按钮。按钮。l在在“选择要包含的项目输出选择要包含的项目输出”对话框中选择需要包含的内容(至少要包对话框中选择需要包含的内容(至少要包含含“主输出主输出”)单击)单击【下一步下一步】按钮。在对话框中单击按钮。在对话框中单击【添加添加】按钮可按钮可将希望

    15、包含到安装项目中的一些辅助文件添加到安装包。将希望包含到安装项目中的一些辅助文件添加到安装包。l向导结束后将自动进入向导结束后将自动进入“文件系统文件系统”窗口,单击窗口,单击【应用程序应用程序】文件夹可文件夹可以看到前面添加到其中的主程序和附加文件。以看到前面添加到其中的主程序和附加文件。l鼠标指向窗口中鼠标指向窗口中“用户的程序菜单用户的程序菜单”单击右键,在弹出的快捷菜单中执单击右键,在弹出的快捷菜单中执行行“添加添加”项下的项下的“文件夹文件夹”命令,使安装程序能够在命令,使安装程序能够在Windows“开始开始”菜单中创建一个目录。菜单中创建一个目录。l选择新创建的文件夹,在文件夹内

    16、容窗格中单击右键,在弹出的快捷菜选择新创建的文件夹,在文件夹内容窗格中单击右键,在弹出的快捷菜单中执行单中执行“创建新的快捷方式创建新的快捷方式”命令。在打开的对话框中选择命令。在打开的对话框中选择“应用程应用程序文件序文件”中的中的“主输出主输出”(主程序)后单击(主程序)后单击【确定确定】按钮。按钮。11.2.2 编译安装项目编译安装项目l所有设置结束后,可在所有设置结束后,可在Visual Studio 2005工具栏中解决方案工具栏中解决方案配置,由配置,由“Debug”(调试)改为(调试)改为“Release”(发布)。(发布)。l选中安装项目名称,单击鼠标右键,在弹出的快捷菜单中执选中安装项目名称,单击鼠标右键,在弹出的快捷菜单中执行行“生成生成”命令,就能得到编译打包过的,存放在源程序文命令,就能得到编译打包过的,存放在源程序文件夹下件夹下Release子文件夹中的安装文件子文件夹中的安装文件Setup.exe文件。文件。l本章通过一些小实例的分析和实现,讲解了本章通过一些小实例的分析和实现,讲解了C#C#中异常处理与中异常处理与应用程序的部署。应用程序的部署。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:异常处理和应用程序打包课件.ppt
    链接地址:https://www.163wenku.com/p-4374320.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库