delphi程序设计基础教程 曹静 第7章 异常处理新

delphi程序设计基础教程 曹静 第7章 异常处理新

ID:19106229

大小:3.75 MB

页数:37页

时间:2018-09-28

delphi程序设计基础教程 曹静 第7章 异常处理新_第1页
delphi程序设计基础教程 曹静 第7章 异常处理新_第2页
delphi程序设计基础教程 曹静 第7章 异常处理新_第3页
delphi程序设计基础教程 曹静 第7章 异常处理新_第4页
delphi程序设计基础教程 曹静 第7章 异常处理新_第5页
资源描述:

《delphi程序设计基础教程 曹静 第7章 异常处理新》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、DELPHI程序设计基础教程第七章异常处理第七章异常处理7.1异常与Delphi的异常类7.2异常保护和处理机制7.3异常处理应用2021/9/152本章学习导读程序运行过程中,不可避免的会出现异常或错误,我们平时所使用的操作系统也经常会出现各种问题,因此在程序的开发中如何检测和处理程序的运行错误是一个关键问题。通过Delphi的异常处理机制,可以捕获这些异常并进行处理。Delphi全面支持异常处理,定义了大量的异常处理对象,使程序能够处理几乎所有的异常情况。本章首先介绍Delphi中的异常种类,然后介绍异常保护和处理机制,最后给出

2、一个应用程序中处理异常的实例,使大家能深入了解异常。2021/9/1537.1异常与Delphi的异常类异常处理机制建立在保护块的基础上,所谓保护块是指介于关键字try和end之间的一段代码,当保护块中的代码发生异常时自动创建一个相应的异常类,程序可以捕获并处理这个异常,以确保程序的正常结束以及资源的释放,若无法处理则会弹出一个消息框。异常类是Delphi异常处理机制的核心,Delphi提供的所有异常类都从Exception类继承,Exception类包含在SysUtils单元中。2021/9/1547.1异常与Delphi的异常类

3、运行期间库异常类运行期间库异常类用于处理运行期间的一些异常,运行期间库异常可以分为7类,它们都定义在SysUtils单元中。(1)I/O异常。I/O异常EInOutError是在程序运行中试图对文件或外部设备进行操作失败后产生的,它从Exception派生后增加了一个公有数据成员ErrorCode,用于保存所发生错误的代码。在发生异常时,通过访问该属性可以针对不同情况采取不同的对策。通过编译开关{$I}可以指定是否使用I/O异常类。当编译开关为{$I}时,将在程序中使用I/O异常类。当编译开关为{$I-}时,不产生I/O异常类,而是

4、直接把错误代码返回到预定义变量IOResult中。(2)堆异常。堆异常是在动态内存分配中产生的,包括2个类EOutOfMemory和EInvalidPointer。(3)整数异常。整数异常都是从EIntError类派生的,但在程序运行中引发的总是它的子类:EDivByZero,ERangeError,EIntOverFlow。2021/9/1557.1异常与Delphi的异常类(4)浮点异常。浮点异常都是从EMathError类派生,与整数异常相似,在程序运行中总是引发它的子类:EInvalidOp、EZeroDivide、EOve

5、rFlow、EUnderFlow。浮点异常是在进行实数操作时产生的。(5)类型匹配异常。当试图用As操作符把一个对象强制匹配为另一类对象失败后,引发类型匹配异常EInvalidCast。(6)类型转换异常。当试图从一种数据类型转换为另一种数据类型时,如果不能直接转换则引发类型转换异常EConvertError。(7)硬件异常。硬件异常在以下两种情况下发生:1、处理器检测到一个它不能处理的错误;2、程序产生一个中断企图中止程序的执行。2021/9/1567.1异常与Delphi的异常类控件异常类在操作和使用控件的过程中,不可避免的会遇

6、到控件异常。控件异常分为预定义异常和通用异常。Delphi为某些特定的控件预定义了一些常见的异常情况,这类异常被称为预定义异常。所有控件都可能出现的异常被称为通用异常。(1)预定义异常Delphi为许多控件都定义了异常类,下面介绍几个典型的预定义异常:1、EMenuError2、EInvalidGridOperation3、EDatabaseError和EReportError(2)通用异常Delphi定义了许多通用异常,下面介绍几个常用的通用异常:1、EInvalidOperation2、EComponentError3、EOut

7、OfResource2021/9/1577.1异常与Delphi的异常类其它组件异常其它组件异常是指除了控件以外的其它组件引发的异常,包括流异常、图形异常、打印异常和字符串链表异常等。(1)流异常。流异常包括EStreamError、EFCreateError、EFOpenError、EFileError、EReadError、EWriteError、EClassNotFound,流异常在Classes库单元中定义(2)图形异常。包括EInvalidGraphic和EInvalidGraphicOperation两类,在Graphi

8、c库单元中定义(3)打印异常。当打印发生错误时(如向一个不存在的打印机发送打印任务)引发,它在Printers库单元中定义。(4)字符串链表异常。包括EStringListError和EListError两类,它们在用户对字符串链表进

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。