异常捕获和枚举类型

异常捕获和枚举类型

ID:40440308

大小:330.61 KB

页数:44页

时间:2019-08-02

异常捕获和枚举类型_第1页
异常捕获和枚举类型_第2页
异常捕获和枚举类型_第3页
异常捕获和枚举类型_第4页
异常捕获和枚举类型_第5页
资源描述:

《异常捕获和枚举类型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Chapter15异常处理补充:枚举类型语法错误,编译错误,逻辑错误Syntaxerrors(语法错误)-编译过程中出现的错误,通过编译器检测。Runtimeerrors(运行时错误)引起程序非正常中断的错误。Logicerrors(逻辑错误)指程序没有按期望的要求执行。2运行错误如果这行出现异常,将跳过其余的行,程序终止。3捕获运行错误4异常类(ExceptionClasses)page4465系统错误(SystemErrors)Systemerrors是由JAVA虚拟机抛出并在Error类中描述的。Error类描述内部的系统错误。这种错误很少发生,如果发生

2、,除了通知用户以及尽量稳妥地结束程序外,几乎什么也不能做。page4466异常(Exceptions)Exceptions是由Exception类描述的。Exception类描述由程序和外部环境引起的错误,这些错误能通过程序捕获和处理。page4467RuntimeExceptionsRuntimeexceptions是由RuntimeException类描述编程错误,比如不合适的转换,访问一个越界数值或数值错误等。运行异常通常由JAVA虚拟机抛出。page4468必检异常和免检异常RuntimeException,Error以及它们的子类都称为免检异常(un

3、checkedexceptions).所有其他异常都称为必检异常(checkedexceptions).uncheckedexception是程序设计中不可重获的逻辑错误。checkedexception编译器强制程序员检查并处理异常9必检异常和免检异常UncheckedExceptionsJava不能保证你的代码能够捕获或声明uncheckedexceptions.说明:Exception类及子类都是是可以捕获的,但是JVM只强制你捕获checkedExcepions.10声明、抛出、捕获异常catchexceptiondeclareexceptionthr

4、owexception11声明异常声明异常(declaringexceptions)-每个方法都必须说明它可能抛出的必检异常的类型.如:publicvoidmyMethod()throwsIOException{}publicvoidmyMethod()throwsIOException,OtherException{}12抛出异常抛出异常(throwinganexception)程序检测到一个错误后,创建一个适当类型异常的实例并抛出它。这里有一个例子:thrownewTheException();TheExceptionex=newTheException(

5、); throwex;13抛出异常Δ/**Setanewradius*/publicvoidsetRadius(doublenewRadius)throwsIllegalArgumentException{if(newRadius>=0)radius=newRadius;elsethrownewIllegalArgumentException("Radiuscannotbenegative");}14捕获异常Δtry{statements;//Statementsthatmaythrowexceptions}catch(Exception1exVar1){ha

6、ndlerforexception1;}catch(Exception2exVar2){handlerforexception2;}...catch(ExceptionNexVar3){handlerforexceptionN;}page44815java.lang.Throwable方法publicStringgetMessage()返回Throwable对象的详细信息publicStringtoString()返回3个字符串合起来的串,它们分别是:异常类名的全称;“:”一个冒号和一个空格;getMessage()方法。publicvoidprintStac

7、kTrace()在控制台上输出Throwable对象及其踪迹信息。16例15.1声明、抛出和捕获异常Δ问题:本例演示如何声明、抛出和捕获异常,改写6.10节中setRadius方法,如果半径是负的,新的setRadius方法抛出一个异常。TestCircleWithExceptionCircleWithExceptionpage44917outputjava.lang.IllegalArgumentException:RadiuscannotbenegativeNumberofobjectscreated:1System.out.println(ex);ise

8、quivalenttoSystem.o

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

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

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