《Java程序设计》课程电子教案(PPT课件讲稿)异常

Java fred
Java fred

异常 异常( Exception)? 异常( Exception)是正常程序流程所不能处理 或没有处理的异常情况或异常事件。 在有些书中,异常也称作例外。 例如除数为0
异常 • 异常(Exception)? – 异常(Exception)是正常程序流程所不能处理 或没有处理的异常情况或异常事件。 – 在有些书中,异常也称作例外。 – 例如除数为0

异常产生 自动产生比如:1/0 抛出异常 throw new ArithmeticExceptiono ArithmeticException e=new ArithmeticExceptiono; throw e
异常产生 • 自动产生 比如:1/0 • 抛出异常 – throw new ArithmeticException() – ArithmeticException e=new ArithmeticException(); – throw e;

为什么需要异常? 强制程序异常错误处理 同时指定需要异常的种类 异常处理模型提供了一种统一处理异常/错误的模式 传统程序方法:设置标志位,或返回错误码,分别 处理各种异常情况。但在编程时常常出现这样的情 况:忘了对某些异常情况进行处理,尤其是当存在 多个分支或者多个开发人员共同开发程序时。 简化对异常情况的处理,减少 if-else语句
为什么需要异常? • 强制程序异常/错误处理 – 同时指定需要异常的种类 • 异常处理模型提供了一种统一处理异常/错误的模式 – 传统程序方法: 设置标志位,或返回错误码,分别 处理各种异常情况。但在编程时常常出现这样的情 况:忘了对某些异常情况进行处理,尤其是当存在 多个分支或者多个开发人员共同开发程序时。 – 简化对异常情况的处理,减少if-else语句

什么时候会发生异常? 数组的下标越界 打开不存在的文件 网络无法连接 操作数超出所要求的范围 少了所需加载的类, 自定义异常,要求程序处理
什么时候会发生异常? • 数组的下标越界 • 打开不存在的文件 • 网络无法连接 • 操作数超出所要求的范围 • 少了所需加载的类, • 自定义异常,要求程序处理

处理异常的几种常用方法 旦捕获异常,马上进行处理 2.重新抛出异常 3.捕获异常,但并不处理 4.通过语句 System exitO退出应用程序
处理异常的几种常用方法 1. 一旦捕获异常,马上进行处理 2. 重新抛出异常 3. 捕获异常,但并不处理 4. 通过语句System.exit()退出应用程序

异常处理 在ry语句块中包含可能会产生异常的语句 紧接着若干个 catch语句块,进行异常处理 catch语句块与fnay语句块至少存在一个 ∥可能会抛出异常的代码 catch(ExceptionType ref) ∥异常处理代码 finally
异常处理 • 在try语句块中包含可能会产生异常的语句 • 紧接着若干个catch语句块,进行异常处理 • catch语句块与finally语句块至少存在一个 try { // 可能会抛出异常的代码 } catch (ExceptionType ref) { // 异常处理代码 } finally { // … }

finally语句块 在异常处理过程中,fnay语句块总是 会被执行到:无论有没有异常发生,也无 论有没有异常被捕捉到 可选项: finally语句块,通常位于 catch语句 块的后面 可以用来释放try语句块中获得的资源 例如,关闭在try语句块中打开的文件
finally 语句块 • 在异常处理过程中,finally 语句块总是 会被执行到: 无论有没有异常发生,也无 论有没有异常被捕捉到 – 可选项: finally 语句块,通常位于catch 语句 块的后面 – 可以用来释放try语句块中获得的资源 • 例如,关闭在try语句块中打开的文件

throws列表 在方法的声明处列出所有的受检异常 返回类型方法名参数列表) throws异常类型1,异常类型2 ∥方法体 在本方法内就可以不处理这些异常 调用该方法的方法就必须处理这些异常 示例: public static void g( throws Exception throw new Exception(; }∥方法g结束
throws 列表 • 在方法的声明处列出所有的受检异常 返回类型 方法名( 参数列表) throws 异常类型1, 异常类型2,… { // 方法体 } – 在本方法内就可以不处理这些异常 – 调用该方法的方法就必须处理这些异常 • 示例: public static void g( ) throws Exception { throw new Exception( ); } // 方法g结束

异常处理:捕捉或者-声明 如果一个方法调用一个抛出受检异常的 方法(含有 throws列表的方法),则该方法 必须捕捉这些受检异常,或通过 throws 列表声明这些异常
异常处理: 捕捉-或者-声明 • 如果一个方法调用一个抛出受检异常的 方法(含有throws列表的方法),则该方法 必须捕捉这些受检异常,或通过throws 列表声明这些异常
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《Java程序设计》课程电子教案(PPT课件讲稿)多态性.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)关于循环.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第二章 结构化程序设计.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第一章 计算机语言.ppt
- 《计算机典型故障处理百科大全》参考资料.pdf
- 武汉大学:《C语言程序设计》课程教学课件 Program Design in C Language(PPT讲稿,共十一讲).ppt
- 《C语言》课程教学课件(PPT讲稿)第4章 简单的C程序设计.ppt
- 《C语言》课程教学课件(PPT讲稿)第3章 数据类型、运算符与表达式.ppt
- 《C语言》课程教学课件(PPT讲稿)第2章 算法(Algorithm).ppt
- 《C语言》课程教学课件(PPT讲稿)第1章 C语言概述.ppt
- 西北农林科技大学:《单片机原理与接口技术》课程教学资源(PPT课件讲稿)第八章 系统扩展.ppt
- 西北农林科技大学:《单片机原理与接口技术》课程教学资源(PPT课件讲稿)第三章 MCS-51单片机的寻址方式和指令系统.ppt
- 西北农林科技大学:《单片机原理与接口技术》课程教学资源(PPT课件讲稿)第十一章 C语言程序设计.ppt
- 西北农林科技大学:《单片机原理与接口技术》课程教学资源(PPT课件讲稿)第九章 接口技术.ppt
- 西北农林科技大学:《单片机原理与接口技术》课程教学资源(PPT课件讲稿)第七章 串行接口.ppt
- 西北农林科技大学:《单片机原理与接口技术》课程教学资源(PPT课件讲稿)第六章 定时中断.ppt
- 西北农林科技大学:《单片机原理与接口技术》课程教学资源(PPT课件讲稿)第五章 中断系统.ppt
- 西北农林科技大学:《单片机原理与接口技术》课程教学资源(PPT课件讲稿)第四章 汇编语言程序设计.ppt
- 西北农林科技大学:《单片机原理与接口技术》课程教学资源(PPT课件讲稿)第二章 MCS-51单片机原理.ppt
- 西北农林科技大学:《单片机原理与接口技术》课程教学资源(PPT课件讲稿)第一章 微型计算机基础.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)继承.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)数组.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)Swing整体介绍.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)文本框(JTextField).ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)JPanel(面板).ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第三章 面向对象程序设计.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)方法.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)习题集.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第四章 JAVA语言深入.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)面向对象、JAVA语言中的两种类.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)第二章 结构化程序设计.ppt
- 《Java程序设计》课程电子教案(PPT课件讲稿)循环.ppt
- 《VC++深入详解教学》掌握C++(孙鑫).ppt
- 《VC++深入详解教学》第十八讲 ActiveX控件(孙鑫).ppt
- 《VC++深入详解教学》第十六讲 线程同步与异步套接字编程(孙鑫).ppt
- 《VC++深入详解教学》文本编程(孙鑫).ppt
- 《VC++深入详解教学》第十一讲 图形的保存和重绘(孙鑫).ppt
- 《VC++深入详解教学》菜单(孙鑫).ppt
- 《VC++深入详解教学》第十讲 创建兼容DC(孙鑫).ppt
- 《VC++深入详解教学》Windows程序运行原理(孙鑫).ppt