java异常处理

java异常处理

ID:41881033

大小:220.50 KB

页数:43页

时间:2019-09-04

java异常处理_第1页
java异常处理_第2页
java异常处理_第3页
java异常处理_第4页
java异常处理_第5页
资源描述:

《java异常处理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、异常例外的概念例外的分类捕获例外声明例外抛出例外创建自己的例外2例外的概念在进行程序设计时,错误的产生是不可避免的,如何处理错误?把错误交给谁去处理?程序又该如何从错误中恢复?这是任何程序设计语言都要解决的问题。所谓错误,是在程序运行过程中发生的异常事件,比如除0溢出、数组越界、文件找不到等,这些事件的发生将阻止程序的正常运行。为了加强程序的鲁棒性(robust),程序设计时,必须考虑到可能发生的异常事件并做出相应的处理。3例外publicclassExceptionRaised{publicExceptio

2、nRaised(){}publicintcalculate(intoperand1,intoperand2){intresult=operand1/operand2;returnresult;}publicstaticvoidmain(String[]args){ExceptionRaisedobj=newExceptionRaised();intresult=obj.calculate(9,0);System.out.println(result);}}OS异常情况异常程序突然终止并将控制交给操作系统在运行

3、时发生的错误4例外的概念在C语言中,通过使用if语句来判断是否出现了错误,同时,调用函数通过被调用函数的返回值感知在被调用函数中产生的错误事件并进行处理。但是,这种错误处理机制会导致不少问题,因为在很多情况下需要知道错误产生的内部细节。通常,用全局变量Errno来存储一个异常事件的类型,这容易导致误用,因为一个Errno的值有可能在被处理前被另外的错误覆盖掉。此外,即使最优美的C语言程序,为了处理异常情况,也常常求助于goto语句。5没有错误处理的程序:{openTheFile;determineitssiz

4、e;allocatethatmuchmemory;read-filecloseTheFile;}例外的概念6例外的概念以常规方法处理错误:openFiles;if(theFilesOpen){determinethelengthofthefile;if(gotTheFileLength){allocatethatmuchmemory;if(gotEnoughMemory){readthefileintomemory;if(readFailed)errorCode=-1;elseerrorCode=-2;}el

5、seerrorCode=-3;}elseerrorCode=-4;}elseerrorCode=-5;7观察前面的程序,大家会发现大部分精力花在出错处理上了只把能够想到的错误考虑到,对以外的情况无法处理程序可读性差出错返回信息量太少例外的概念8例外的概念Java通过面向对象的方法来处理程序错误,在Java中,错误被称为例外(Exception)。用例外的形式处理错误:{try{openTheFile;determineitssize;allocatethatmuchmemory;read-File;close

6、TheFile;}catch(fileopenFailed){dosomething;}catch(sizeDetermineFailed){dosomething;}catch(memoryAllocateFailed){dosomething;}catch(readFailed){dosomething;}catch(fileCloseFailed){dosomething;}}9例外的概念例外的分类捕获例外声明例外抛出例外创建自己的例外10例外的分类一个例外是由一个对象来代表的,所有的例外都直接或间接地

7、继承自Throwable类。在Java类库的每个类包中都定义了例外类,这些例外类分成两大类:Error类及Exception类,后者是Java程序中需要大量处理的。除了Java类库所定义的例外类之外,用户也可以通过继承已有的例外类来定义自己的例外类,并在程序中使用(利用throw产生,catch捕捉)。11例外的分类用户自己产生的异常要处理ThrowableErrorException缺省的异常处理程序由用户捕获或声明并处理不做处理RuntimeException12Error:由Java虚拟机生成并抛出,包

8、括动态链接失败、虚拟机错误等,Java程序不做处理。RuntimeException:Java虚拟机在运行时生成的例外,如被0除等系统错误、数组下标超范围等,其产生比较频繁,处理麻烦,对程序可读性和运行效率影响太大。因此由系统检测,用户可不做处理,系统将它们交给缺省的异常处理程序(当然,必要时,用户可对其处理)。Exception:一般程序中可预知的问题,其产生的例外可能会带来意想不到的结果,因此J

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

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

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