实验四 异常处理和包装类的编程练习

实验四 异常处理和包装类的编程练习

ID:38699058

大小:329.00 KB

页数:9页

时间:2019-06-17

实验四  异常处理和包装类的编程练习_第1页
实验四  异常处理和包装类的编程练习_第2页
实验四  异常处理和包装类的编程练习_第3页
实验四  异常处理和包装类的编程练习_第4页
实验四  异常处理和包装类的编程练习_第5页
资源描述:

《实验四 异常处理和包装类的编程练习》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验四异常处理和包装类的编程练习实验目的了解异常类的作用,掌握对异常的捕获和处理方式,了解包装类的作用和特点以及基本数据类型与包装类的对应关系,掌握包装类的使用方法。实验要求1、理解系统异常处理的机制;2、创建自定义的异常类型;3、了解基本数据类型和包装类的对应关系;4、理解基本数据类型与包装类之间的区别和联系;5、掌握基本数据类型与包装类之间相互转换的方法。实验内容1、使用try…catch语句处理异常1.1、异常类型匹配的处理方式(1)程序功能:在程序中主动产生一个ArithmeticException类型被0除的异常,并用catch语句捕获这个异常。最后通过Arit

2、hmeticException类的对象e的方法getMessage给出异常的具体类型并显示出来。(2)程序源代码如下。publicclassEXP5_1{publicstaticvoidmain(String[]arg3){System.out.println("这是一个异常处理的例子");try{inti=10;i/=0;}catch(ArithmeticExceptione){System.out.println("异常是:"+e.getMessage());}finally{System.out.println("finally语句被执行");}}}(1)编译并

3、运行,结果如图5.1所示。图5.11.1、异常类型不匹配的处理方式(1)程序源代码如下。publicclassEXP5_2{publicstaticvoidmain(String[]args){System.out.println(“这是一个异常处理的例子”);try{inti=10;i/=0;}catch(IndexOutOfBoundsExceptione){System.out.println("异常是:"+e.getMessage());}finally{System.out.println("finally语句被执行");}}}(2)编译并运行,结果如图5.

4、2所示。图5.2因为EXP5_2程序试图捕获一个异常类为IndexOutOfBoundsException的异常,但发生的异常却是ArithmeticException类,所以,程序可以通过编译但在运行时,系统会给出异常报告:报告所发生的但没有被捕获的异常。不过在此之前,其它语句和finally语句将会被执行。1.1、包含多个catch子句的异常处理方式(1)程序功能::在try子句中设计两个可能出现的异常,当a为0时会发生异常。另外一个是肯定的异常,因为数组c的长度为1,定义c[42]是为法的。通过两个catch子句分别来捕获异常。(2)程序源代码如下。publiccl

5、assEXP5_3{publicstaticvoidmain(String[]args){try{inta=args.length;System.out.println("a="+a);intb=42/a;intc[]={1};c[42]=99;}catch(ArithmeticExceptione){System.out.println("发生了被0除:"+e);}catch(ArrayIndexOutOfBoundsExceptione){System.out.println("数组下标越界:"+e);}}}(1)编译并运行,结果如图5.3所示。图5.31、使用t

6、hrow语句抛出异常在上面的实验中,可以发现,异常对象是Java运行时由系统抛出的。抛出异常也可以通过使用throw语句实现。throw是Java语言的关键字,用来告知编译器此处要发生一个异常。throw后面要跟一个新创建的异常类对象,用于指出异常的名称和类型。(1)程序源代码如下。publicclassEXP5_4{staticvoidthrowProcess(){try{thrownewNullPointerException("空指针异常");}catch(NullPointerExceptione){System.out.println("在throwProc

7、ess方法中捕获"+e.getMessage());throwe;}}publicstaticvoidmain(Stringargs[]){try{throwProcess();}catch(NullPointerExceptione){System.out.println("再次捕获:"+e);}}}(1)编译并运行,结果如图5.4所示。图5.41、使用throws语句throws子句一般用来表明在使用该方法时可能抛出异常但不捕获的异常。异常由系统来处理。throws子句也可以指出抛出异常是RuntimeException或

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

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

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