- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
lecture11-异常处理
华东师范大学软件学院 王丽苹 异常处理和异常类型Chapter 11 557-572 Hy Mao * 华东师范大学软件学院 Outline 异常处理的重要性 Java语言中的异常处理 Java的异常类 如何定义自己的异常: 定义新的异常 抛出异常 捕获异常 异常的处理流程 调试技术与调试技巧 异常介绍 Example:以下代码运行之后会出现什么情况? 异常介绍 异常简介 什么是异常? 异常实际上是导致正常指令流中断的一种事件. 编写应用程序时应该做些什么工作(程序中的Bug是不可避免的,编写程序时应该尽量的避免错误的出现,并且提供尽可能多的错误信息): 通知用户出现了一个错误。 保存当前已经完成的所有工作。 允许用户安全地退出程序。 异常简介 什么类型的错误可以导致异常呢? 严重的硬件错误,如内存中某些芯片故障或者硬盘崩溃。 程序需要使用系统中当前不可用的I/O设备 试图用零去除 试图通过超过边界的下标访问数组的元素 整数溢出 浮点数溢出 试图打开不存在的文件以使用 试图打破安全性,比如试图修改只读文件 传统的错误处理技术 在一般的传统的语言中如何处理异常事件? 例如:如何处理除数为0的事件。 早期除了精心设计的之外,编程语言没有任何的错误处理机制。 程序员必须考虑可能的错误条件并沿着主应用程序代码进行检查。 程序员认真地考虑所有类型的错误检测,是非常巨大的任务。 传统的错误处理技术 以常规方法处理错误—退出程序,返回错误编号 Note: 常规方法的不足: Java中处理异常的思路 Java中的异常可以理解为一种特殊的class。 Java中用异常来处理程序中可能的错误,其主要的特点在于: 1.把错误代码从常规代码中分离出来(便于集中精力处理特定的功能)。 2. 把错误传播给调用堆栈。 3. 按错误类型和错误差别分组(复用的思想)。 4. 系统提供了对于一些无法预测的错误的捕获和处理 5. 克服了传统方法的错误信息有限的问题 Exception—如何捕获 Exception—如何捕获 try{}程序块中通常包含了java程序中的一段代码,这段代码在运行中可能会出现异常的事件。try意味着需要检测这段代码的执行。 catch程序块: 语法为:catch (ExceptionClass exceptionObj){} catch程序块必须出现在try程序块之后。一个try程序块后可以跟一个或多个catch程序块。 当try程序块中没有出现异常时,catch程序块直接被跳过。 当try程序块中出现异常时,与当前异常匹配的catch程序块被执行。 具体情况可以参考以下的实例。 Example-ExceptionTest.java Example-ExceptionTest.java Java中定义的异常 异常的分类 Java中定义的异常 Error:描述了java运行时间系统内部的错误以及资源耗尽的情况。用户一般对这种错误是无能为力的。(例如虚拟机内部的错误、内存溢出、堆栈溢出的错误) 异常的分类: Unchecked Exception是指Error类和RuntimeException类及其他们的子类。 RuntimeException及其子类表示的异常往往是由于程序编写的错误造成的。 例如数组越界错误,空指针错误等,这一类错误往往可以通过改写程序来避免。 在程序中可以不捕获Unchecked Exception。 Java中定义的异常 异常的的分类: Checked Exception是指除了Error类和RuntimeException类及其他们的子类之外的异常类。 Checked Exception往往表示由于外界的因素造成的系统异常事件例如I/O错误,读取硬盘错误等,这一类异常在程序代码中是没有办法解决的。 如果在代码中存在Checked Exception,必须要用try和catch程序块开处理这一类异常事件。 Java中定义的异常 Java程序中常用的异常类 RuntimeException: 错误的转型(cast):java.lang.ClassCastException 数组越界错误:java.lang.ArrayIndexOutOfBoundsException 空指针错误:java.lang.NullPointerException 数组元素类型错误:java.lang.ArrayStoreException 算术运算错误:java.lang.ArithmeticException String转换成数字类型时的错误:java.lang.NumberFormatException 非RuntimeException: 文件读取越界:java.io.EOFExcept
您可能关注的文档
- KL变换和主成分分析.ppt
- kk 2mw控制系统结构(version 4.0).ppt
- Knowledge Age_Culture 知识经济时代的文化.pptx
- Knowledge Sharing知识共享.pptx
- KOH-浸渍-还原法在炭纤维表面涂层金属纳米催化剂颗粒及其应用.doc
- krpano xml详细文档.docx
- KTV简介Microsoft Word 文档.doc
- kummell 病.pptx
- k第十一周 防火墙技术(第23章).ppt
- L03 - VIPLE入门.pptx
- GAT 697-2007 信息安全技术 静态网页恢复产品安全功能要求 conv.docx
- GBT 16685-1996 信息技术 打印设备 测量打印机吞吐量的方法 conv.docx
- YDT 1536.1-2006 电信设备的电磁信息安全性要求和测量方法 第1部分:电磁辐射信息泄漏 conv.docx
- GAT 986-2012 信息安全技术 反垃圾邮件产品安全技术要求 conv.docx
- GAT 682-2007 信息安全技术路由器安全技术要求 conv.docx
- GBT 21053-2007 信息安全技术 公钥基础设施 PKI系统安全等级保护技术要求 conv.docx
- 57、《工业锅炉能效限定值及能效等级》 GB 24500-2009(2012年去除).pdf
- GBT 2887-2000 电子计算机场地通用规范 conv.docx
- GA 658.10-2006 互联网公共上网服务场所信息安全管理系统 信息代码 conv.docx
- 基于虚拟现实的煤炭安全操作模拟系统:设计、实现与应用探索.docx
原创力文档


文档评论(0)