《Java异常处理》PPT课件.ppt
《《Java异常处理》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《Java异常处理》PPT课件.ppt(25页珍藏版)》请在三一办公上搜索。
1、邯郸学院计算机系 张延军,第四章 Java异常处理,教学目标,4.1 Exception的概念、子类及其继承关系4.2 面向对象的异常处理机制4.3 创建自定义异常,教学目标,4.1 Exception的概念、子类及其继承关系 4.1.1 Exception的概念 4.1.2 Exception的分类 4.1.3 Exception的继承关系和层次 4.1.4 方法调用堆栈4.2 面向对象的异常处理机制 4.2.1 异常处理语句(try-catch-finally)4.2.2 在方法首部用throws抛出异常 4.2.3 在方法体中用throw手工抛出异常 4.2.4 程序示例4.3 自定义异
2、常,引言,在进行程序设计时,错误的产生是不可避免的,如何处理错误?把错误交给谁去处理?程序又该如何从错误中恢复?这是任何程序设计语言都要解决的问题。以面向过程语言C语言为例,一般通过使用if语句来判断是否出现了错误,同时,调用函数通过被调用函数的返回值感知在被调用函数中产生的错误事件并进行处理。没有错误处理的程序:openTheFile;determine its size;allocate that much memory;read-file closeTheFile;,引言,openFiles;if(theFilesOpen)determine the length of the file
3、;if(gotTheFileLength)allocate that much memory;if(gotEnoughMemory)read the file into memory;if(readFailed)errorCode=-1;else errorCode=-2;else errorCode=-3;else errorCode=-4;else errorCode=-5;,try openTheFile;determine its size;allocate that much memory;read-File;closeTheFile;catch(fileopenFailed)dos
4、omething;catch(sizeDetermineFailed)dosomething;catch(memoryAllocateFailed)dosomething;catch(readFailed)dosomething;catch(fileCloseFailed)dosomething;finally dosomething;,面向过程和面向对象异常处理机制对比,4.1.1 Exception的概念,异常(Exception)是指程序运行过程中出现的可能发生会打断程序正常执行的事件或现象,例如用户输入错误、除数为零、需要处理的文件不存在、数组下标越界、内存不足等。为了加强程序的鲁棒性
5、(Robust),程序设计时,必须考虑到可能发生的异常(Abnormal)事件并做出相应的处理。Java提供了功能强大的面向对象异常处理机制,可以方便地在程序中监视可能发生异常的程序块,并将所有异常处理的代码集中放置在程序某处,使完成正常功能的程序代码与进行异常处理的程序代码分开,便于程序的阅读、修改和维护。,4.1.1 Exception的概念,在Java中将异常情况分为Error 和Exception两大类。Error类:指较少发生的内部系统错误,由JVM生成并抛出,包括动态链接失败、JVM内部错误、资源耗尽等严重情况,程序员无能为力,只能让程序终止。Exception类:解决由程序本身及
6、环境所产生的异常,有补救或控制的可能,程序员也可预先防范。,4.1.1 Exception的概念,Throwable类:具体请参考帮助文档。构造方法:Throwable()构造方法:Throwable(String message)String toString():返回形如“classname”“getMessage()”的信息。String getMessage():返回有关异常事件的信息。String getLocalizedMessage()void printStackTrace():用来跟踪异常事件发生时的执行堆栈的内容void printStackTrace(PrintStrea
7、ms)void printStackTrace(PrintWriter s)Throwable fillInStackTrace(),4.1.2 Exception的分类,Java语言中Exception可以分为:检查性异常(Checked Exception):一般程序中可预知的问题,其产生的例外可能会带来意想不到的结果,因此Java编译器要求Java程序必须捕获或声明所有的非运行时异常必须进行异常处理,否则编译不能通过。例如以IOException为代表的一些类如FileNotFoundException、用户连接数据库时产生的SQLException等。非检查性异常(Unchecked
8、Exception):以RuntimeException为代表的一些类,编译时发现不了,只在能运行时才能发现。Runtime Exception:Java虚拟机在运行时生成的例外,如被0除等系统错误、数组下标超范围等,其产生比较频繁,处理麻烦,对程序可读性和运行效率影响不太大。因此由系统检测,用户可不做处理,系统将它们交给缺省的异常处理程序(当然,必要时,用户可对其处理)。,ClassNotFoundException ClassNotSupportedException IllegalAccessException IntantiationException InterruptedExcep
9、tion NoSuchMethodException RuntimeException ArithmeticException ArrayStoreException IllegalArgumentException IllegalThreadStateException NumberFormatException IndexOutOfBoundsException ArrayIndexOutOfBoundsException StringIndexOutBoundsException Negative ArraySizeException NullPointerException Secur
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java异常处理 Java 异常 处理 PPT 课件
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5452775.html