- 1、本文档共58页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六讲 例外(Exception)处理;1、例外的概念;1、例外的概念; 没有错误处理的程序:
{
openTheFile;
determine its size;
allocate that much memory;
read-file
closeTheFile;
};1、例外的概念; 以常规方法处理错误存在的问题:
观察前面的程序,大家会发现大部分精力花在出错处理上了
只把能够想到的错误考虑到,对以外的情况无法处理
程序可读性差,大量的错误处理代码混杂在程序中
出错返回信息量太少,无法更确切的了解错误状况或原因;1、例外的概念;1、例外的概念;1、例外的概念;1、例外的概念;不同的例外处理策略
关键性应用(处理所有例外)
实验软件(可以忽略许多例外)
处理例外时的注意事项
终止程序会导致资源泄漏,利用例外处理释放资源
尽可能近地处理例外,这样程序清晰易读
能在局部处理的错误不要使用例外机制
例外机制的处理比正常处理效率低;1、例外的概念;1、例外的概念;1、例外的概念;2、例外的分类; Error:由Java虚拟机生成并抛出,包括动态链接失败、虚拟机错误等,Java程序不做处理。
Runtime Exception:Java虚拟机在运行时生成的例外,如被0除等系统错误、数组下标超范围等,其产生比较频繁,处理麻烦,对程序可读性和运行效率影响太大。因此由系统检测, 用户可不做处理,系统将它们交给缺省的异常处理程序(当然,必要时,用户可对其处理)。
Exception:一般程序中可预知的问题,其产生的例外可能会带来意想不到的结果,因此Java编译器要求Java程序必须捕获或声明所有的非运行时异常。;2、例外的分类;2、例外的分类
——Throwable类的方法;77: public static void main(String[] args) {
78: try {
79: testThrowable();
80: }
81: catch (Throwable t) {
82: System.err.println(t.toString());
83: System.err.println(t.getMessage());
84: System.err.println(t.getLocalizedMessage());
85: t.printStackTrace();
86: }
87: }
…
136: static void testThrowable() throws Throwable {
137: throw new Throwable(测试 Throwable 的用法。);
138: }
java.lang.Throwable: 测试 Throwable 的用法。
测试 Throwable 的用法。
测试 Throwable 的用法。
java.lang.Throwable: 测试 Throwable 的用法。
at test.Untitled1.testThrowable(Untitled1.java:137)
at test.Untitled1.main(Untitled1.java:79);77: public static void main(String[] args) {
78: try {
79: testThrowable();
80: }
81: catch (Throwable t) {
82: System.err.println(t.toString());
83: System.err.println(t.getMessage());
84: System.err.println(t.getLocalizedMessage());
85: t.printStackTrace(System.err);
86: }
87: }
…
136: static void testThrowable() throws Throwable {
137: throw new Throwable();
138: }
java.lang.Throwable
null
null
java.lang.Throwable
at test.Untitled1.testThrowable(Untitled1.java:137)
at test.Untitled1.main(Untitled1.java:79);2、例外的分类
——一些常用的例外类;Exception
您可能关注的文档
- IATF16949标准第7章支持.pptx
- IBM产品差异化模型概述(英文版).pptx
- IATF169492016新标准要求的解读和应对(PPT68页).pptx
- IBM的分析报告英文.pptx
- IBM如何建立经销通路.pptx
- IBM的ITIL企业培训管理资料.pptx
- IC代工生产管理培训.pptx
- icbc住房信贷tvc广告创意策略思路.pptx
- ICU血糖监测的准确性及安全性(讲义)127.pptx
- IDP及职能的定义原则介绍.pptx
- 2024年江西省寻乌县九上数学开学复习检测模拟试题【含答案】.doc
- 2024年江西省省宜春市袁州区数学九上开学学业水平测试模拟试题【含答案】.doc
- 《GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语》.pdf
- 中国国家标准 GB/T 44275.2-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第2部分:术语.pdf
- GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- 《GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构》.pdf
- 中国国家标准 GB/T 44285.1-2024卡及身份识别安全设备 通过移动设备进行身份管理的构件 第1部分:移动电子身份系统的通用系统架构.pdf
- GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 中国国家标准 GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南.pdf
- 《GB/T 44275.11-2024工业自动化系统与集成 开放技术字典及其在主数据中的应用 第11部分:术语制定指南》.pdf
文档评论(0)