




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第五讲 异常处理 教学要求 教学要求 1 理解异常处理的概念理解异常处理的概念 2 掌握异常处理的方法掌握异常处理的方法 教学学时 教学学时 2H 例 1 编写一个应用程序 要求用户通过两个文 本框输入两个数 并求它们的和 并在标签框中 输出 1 界面设计 新建一个项目 选择 windows 应用程序模板 在窗体上添加三个标签框 两个文本框和一个命 令按钮 如图所示 2 设置属性 先将两个文本框改名为 txtA 和 txtB 将输出 结果的标签框改名为 labC 再设置各对象的属性如 下 对象名属性名属性值 Form1Text加法练习 Label1Text第一个加数为 Label2Text第一个加数为 button1Text确定 labCText计算结果为 3 编写代码 双击确定命令按钮 进入代码编辑窗口 在自动生成的程序模块 private void button1 Click object sender EventArgs e 中输入以下代码 int a b c a Int32 Parse txtA Text b Int32 Parse txtB Text c a b labC Text 计算结果为 txtA Text txtB Text c ToString 4 运行程序 测试程序结果是否正确 例 2 异常处理 在程序测试时 输入一个小数 或输入一些字符 程序出现异常并中止运行 C 中提供了异常处理的机制方法为 通过 try 语句捕获异常 通过 catch 语句处理异常 通过 finally 语句完成程序的善后处 理 如收回已分配的资源 关闭与数据源的连接等 通过 throw 语句抛出自定义的异常 try int a b c a Int32 Parse txtA Text b Int32 Parse txtB Text c a b labC Text 计算结果为 txtA Text txtB Text c ToString catch MessageBox Show 请输入正确格式的整数 例 3 处理多个异常 在测试以上程序时 若输入一个很大的整数 程序的异常提示信息不够准确 C 提供 了处理多个异常的方法 try int a b c a Int32 Parse txtA Text b Int32 Parse txtB Text c a b labC Text 计算结果为 txtA Text txtB Text c ToString catch FormatException x MessageBox Show 请输入正确格式的整数 catch OverflowException x MessageBox Show 输入整数不能太大 例 4 进一步提高 FormatException x中的变量 x 的作用 及MessageBox Show 方法的重载 try int a b c a Int32 Parse txtA Text b Int32 Parse txtB Text c a b labC Text 计算结果为 txtA Text txtB Text c ToString catch FormatException x MessageBox Show x Message catch OverflowException x MessageBox Show 输入整数不大于 Int32 MaxValue ToString 异常信息 MessageBoxButtons OK MessageBoxIcon Warning 例 5 抛出自定义的异常及程序块的善后处理 C 可通过 throw 语句抛出自定义的异常 通过 finally 语句完成程序的善后处理 如收 回已分配的资源 关闭与数据源的连接等 public class MyException Exception 定义一个自定义的异常类MyException 继承自Exception public MyException base 请注意 输入的整数格式错误 定义MyException类的无参构造函数 调用基类的构造函数 并传递一个参数 请注意 输入的整数格式错误 public partial class Form1 Form public Form1 InitializeComponent private void button1 Click object sender EventArgs e try int a b c if txtA Text txtB Text throw new MyException a Int32 Parse txtA Text b Int32 Parse txtB Text c a b labC Text 计算结果为 txtA Text txtB Text c ToString catch MyException x MessageBox Show x Message catch FormatException x MessageBox Show 请注意 输入的整数格式错误 catch OverflowException x MessageBox Show 输入整数不大于 Int32 MaxValue ToString 异常信息 MessageBoxButtons OK MessageBoxIcon Warning finally MessageBox Show 已完成程序块的善后处理 finally 语句块是不论异常是否发生 都会执行的语句块 作业题 P38 1 补充知识 对文本框中输入数据的校验 public partial class Form1 Form int a b c public Form1 InitializeComponent private void button1 Click object sender EventArgs e c a b Label1 Text string Format 0 1 2 a b c private void textBox1 Validating object sender CancelEventArgs e try a int Parse textBox1 Text catch FormatException x MessageBox Show x Message textBox1 Focus textBox1 SelectAll private void textBox2 Validating object sender CancelEventArgs e try b int Parse textBox2 Text catch FormatException x MessageBox Show x Message textBox2 Focus textBox2 SelectAll private void textBox1 KeyPress object sender KeyPressEventArgs e if e KeyChar 13 textBox2 Focus private void textBox2 KeyPress object se
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海市人民医院产科急诊护理应急考核
- 张家口市人民医院机器人手术团队配合与流程考核
- 巴彦淖尔市人民医院专科护理人才培养考核
- 佳木斯市中医院复杂颅底肿瘤多学科协作考核
- 2025第二人民医院患者投诉接待处理考核
- 通辽市中医院美容治疗效果评估考核
- 朔州市人民医院实验室检查判读考核
- 保定市人民医院快速病理带教考核
- 2025年租赁合同合同终止条件协议(CF-2000-0601)
- 不同权力结构下考虑消费者碳信息共享的绿色产品供应链决策研究
- 火灾原因分析及事故案例
- 技术开发合同补充协议
- 纪委委员工作职责
- 口腔执业医师助理资格考试模拟试卷带答案
- 关于成立公司双重预防体系领导小组的通知
- 中小学教师职称评审讲课答辩英语学科全英答辩题目汇编(带汉语翻译)
- 【公开课课件】二年级下册写话《彩虹色的花》绘本写话
- 12345职能部门培训
- 房屋招租招标文件
- 北师大版五年级数学上册《第二单元》测试卷及答案
- 2024年网络安全知识竞赛考试题库500题(含答案)
评论
0/150
提交评论