《异常的捕获及处理》PPT课件

《异常的捕获及处理》PPT课件

ID:37009737

大小:633.10 KB

页数:21页

时间:2019-05-10

《异常的捕获及处理》PPT课件_第1页
《异常的捕获及处理》PPT课件_第2页
《异常的捕获及处理》PPT课件_第3页
《异常的捕获及处理》PPT课件_第4页
《异常的捕获及处理》PPT课件_第5页
资源描述:

《《异常的捕获及处理》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第6章异常的捕获及处理6.1异常简介6.2异常类的继承结构6.3异常处理机制6.4本章小结16.1异常简介在程序运行过程中,可能会遇到一些非正常的状况。例如:除以零、数组越界、文件读写时找不到指定的路径、数据库操作时连接不到指定的服务器。此时程序将无法继续运行,导致整个程序运行中断。这种非正常状况对程序来说是一种异常。程序员在程序的设计中必须考虑到各种异常的发生,并做好相应的处理。通常一个好的程序,整体的1/3是在处理要完成的真正任务,而2/3是在处理异常,这样的程序才是最强壮的。Java提供一套完整的异常处理

2、机制,保证程序的正常运行.26.2异常类的继承结构查阅API文档3ObjectThrowableRuntimeException……ErrorExceptionIOExceptionJava程序中的异常现象也采用了面向对象的思想,所有的异常都使用类来描述。6.2异常类的继承结构4Error类:应用程序在运行期间发生的严重错误。例如,虚拟机内存用尽、堆栈溢出等。(程序员管不了)Exception类:几十个子类,描述了不同类型的异常。⑴非检查性异常:编译器在编译程序时不进行检查,到运行时才会显现。例如Runtime

3、Exception,像数组越界异常、整数除以零异常等。这类异常应该通过反复测试尽量避免,不应该靠异常处理机制来处理,主要是由程序员经验不足或思维不够缜密造成的。⑵检查性异常:编译器在编译程序时必须进行异常处理,否则编译时不能通过。例如IOException,像数据库连接失败、用光盘时用户没插入光盘等。这类异常程序员是无法避免的,应由异常处理机制处理。6.3异常处理机制异常处理的两种方式①捕获异常try——catch——finally②抛出异常throw、throws创建类创建对象初始化Java库类中的类SUN程

4、序员程序员用户创建的类程序员程序员程序员异常类SUN出现异常的语句JVM(自动)5处理异常时编程人员做什么?①给异常类对象起名字②抓它③处理它④抛它publicclassExceptionDemo01{publicstaticvoidmain(Stringargs[]){System.out.println("*******计算开始*******");inti=10;intj=0;inttemp=i/j;System.out.println("两个数字相除的结果:"+temp);System.out.print

5、ln("*******计算结束*******");}}1.异常范例——ExceptionDemo01.javatry{可能出现异常的语句;}catch(异常类1异常对象名){异常1的处理语句;}catch(异常类2异常对象名){异常2的处理语句;}…finally{一定要运行的语句;}关键字作用try:捕捉异常catch:处理异常finally:异常的统一出口2.异常处理try-catch-finally7publicclassExceptionDemo02{publicstaticvoidmain(Strin

6、gargs[]){System.out.println("******计算开始********");inti=10;intj=0;System.out.println("*******计算结束*********");}}范例ExceptionDemo02.javatry{inttemp=i/j;//此处产生了异常System.out.println("两个数字相除的结果:"+temp);}catch(ArithmeticExceptionae){System.out.println("出现异常了:"+ae);}

7、程序在开发中不会只存在一个异常,肯定会同时存在多个异常。此时就需要使用多个catch语句进行处理多重catch处理异常9编程:使用键盘输入两个数据,进行除法操作。分析(考虑异常情况):没有输入参数或个数不够——数组超出绑定异常输入的参数不是数字——数字格式化异常除数为零——算术异常……publicclassExceptionDemo04{publicstaticvoidmain(String[]args){inti,j;try{Stringstr1=args[0];//可能有异常Stringstr2=args[

8、1];//可能有异常i=Integer.parseInt(str1);j=Integer.parseInt(str2);inttemp=i/j;//可能有异常System.out.println("相除的结果:"+temp);}catch(ArithmeticExceptione){System.out.println("算术异常:"+e);}catch(NumberFormatExc

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

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

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