第4章 异常处理

第4章 异常处理

ID:44984839

大小:151.00 KB

页数:21页

时间:2019-11-06

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

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

1、异常处理要点:try/catch/finally机制throw是故意产生异常,用于方法体内throws用于方法的声明,它把方法产生的异常交给调用该方法的另外一个方法处理。异常简介在java中,程序于编译时产生的错误一般为语法错误(syntaxerror),而在运行时产生的错误则称为运行时期错误(runtimeerror)。编译错误由编译程序javac产生,而运行时的错误通常称为异常(Exception),异常也是java中的类。【例1】除数为0的异常publicclassEx1{intx;publicstaticvoidm

2、ain(Stringargs[]){Ex1c=newEx1();inty;y=3/c.x;System.out.println(“ok”);}}异常的层次结构:ThrowableErrorExceptionVirtualMachineErrorAwtErrorOutOfMerroyErrorNoclassDeFoundErrorRuntimeExceptionIOExceptionArithmeticExceptionNullpointerExceptionIndexOutOfBoundsExceptionFileNotF

3、oundExceptionEOFException…………图4.3异常的层次结构图常用异常类RuntimeException类名称含义ArithmeticException算术运算错误,例如除数为0ArrayIndexOutOfBoundsException数组元素下标越界异常ArrayStoreException数组存入元素类型与声明类型不符IllegalArgumentException非法参数NumberFormatException参数格式不对IllegalThreadStateException要求进行的运算与线

4、程状态不符NegativeArraySizeException数组长度为负NullPointerException无分配存储空间SecurityException存取违反安全规定RuntimeException类名称含义ClassNotFoundException找不到类IllegalAccessException无法读取某java类InstantiationException建立新对象错误FileNotFoundException找不到存取的文件EOFException文件指针已移至文件结尾InterruptedExce

5、ption某一线程在运行时,被另一线程中断NoSuchMethodException找不到要引用的方法MalformedURLExceptionURL的格式有误UnknowHostException计算机主机名有误try/catch/finally机制try{可能出现异常的程序代码}catch(异常类名1异常对象名1){异常类名1对应的异常处理代码}catch(异常类名2异常对象名2){异常类名2对应的异常处理代码}…finally{必须执行的代码}对Ex1.java进行修改【例2】publicclassEx1{intx;

6、publicstaticvoidmain(String[]args){Ex1c=newEx1();inty;try{//可能出现异常的代码y=3/c.x;System.out.println("ok");}catch(ArithmeticExceptione){//捕获异常System.out.println("dividebyzero");}}}获得异常的有关信息e.printStackTrace()指出异常的类型、性质、栈层次以及出现在程序中的位置等信息e.getMessage()输出错误的性质e.toString()

7、给出异常的类型及性质【例3】classEx3{publicstaticvoidmain(Stringargs[]){try{intb=Integer.parseInt(“aaa”);System.out.println(b);}catch(Exceptione){e.printStackTrace();System.out.println(“getmessage:”+e.getMessage());System.out.println(“toString:”+e.toString());}}}抛出异常如果程序设计者要故意产

8、生异常,则可以用throw来抛出异常:语法格式:throw异常对象名;其中异常对象必须是Throwable类或其子类的实例对象。例如,如果要求所输入数字不能是13,这时可以设计程序一遇到13就抛出异常。【例4】classEx4{intx=13;publicstaticvoidmain(Stringarg

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

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

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