java---异常类匿名类实验报告

java---异常类匿名类实验报告

ID:37852089

大小:160.00 KB

页数:10页

时间:2019-06-01

java---异常类匿名类实验报告_第1页
java---异常类匿名类实验报告_第2页
java---异常类匿名类实验报告_第3页
java---异常类匿名类实验报告_第4页
java---异常类匿名类实验报告_第5页
资源描述:

《java---异常类匿名类实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验十四异常类、匿名类课程名称:面向对象程序设计实验项目名称:实验十四异常类、匿名类【实验目的】1.掌握Java异常类、嵌套类、匿名类。【实验内容】一、异常类实验1.编译下面的程序,并回答问题。classExceptionTest1{publicstaticvoidmain(String[]args){inta=0,b=0;try{a=Integer.parseInt(args[0]);//语句1b=10;//语句2}catch(NumberFormatExceptione){a=1;}System.out.

2、println(a);System.out.println(b);}}(1)执行上述ExceptionTest1类(在命令提示符下敲入javaExceptionTest199)运行结果:(2)执行上述ExceptionTest1类(在命令提示符下敲入javaExceptionTest1a)运行结果:(3)比较上面两次运行的结果,说明原因。(思考:执行语句1时发生异常,语句2执行没有?)执行语句1时没有发生异常,语句2执行发生异常。因为在源代码中写有try{a=Integer.parseInt(args[0])

3、;//语句1b=10;//语句2}catch(NumberFormatExceptione){a=1;}当在运行代码时,若在文件名后面输入的是整数,则不会发生异常,try代码块的下面的代码继续执行,而当输入的是字符或是字符串时,try代码块会捕获错误的信息,但是并没有运行下面的代码,如果try代码块中添加了finally部分,将原来的System.out.println(a);System.out.println(b);填入到finally中,则无论有没有发生异常,都能执行到finally中的代码。2.编译下

4、面的程序,并回答问题。classExceptionTest2{publicstaticvoidmain(String[]args){inta=0;try{a=Integer.parseInt(args[0]);}}}(1)编译上述程序,是否出错?出错(2)如果出错,给出出错信息(即javac编译该文件出错信息):分析为何出错?出错原因:try和catch或finally是成对出现的,不能出现了try,而后面就没有了catch或者finally(3)如果将程序改写为:classExceptionTest2{pu

5、blicstaticvoidmain(String[]args){inta=0;try{a=Integer.parseInt(args[0]);}catch(NumberFormatExceptione){a=1;}}}上述程序是否编译出错?为什么?上述程序中try与catch是成对出现的,所以编译不会出错。(4)如果将程序改写为:classExceptionTest2{publicstaticvoidmain(String[]args){inta=0;try{a=Integer.parseInt(args[

6、0]);}finally{a=1;}}上述程序是否编译出错?不出错为什么?当出现了try时,后面要么接catch,要么接finally,但是不能这两个都不接。(4)如果将程序改写为:classExceptionTest2{publicstaticvoidmain(String[]args){inta=0;try{a=Integer.parseInt(args[0]);}catch(Exceptione){a=1;}catch(NumberFormatExceptione){a=2;}}}上述程序是否编译出错?

7、分析为何出错,如何修改程序使之正确?处理子类异常的catch代码块要写在前面,超类写在后面。classExceptionTest2{publicstaticvoidmain(String[]args){inta=0;try{a=Integer.parseInt(args[0]);}catch(NumberFormatExceptione){a=2;}catch(Exceptione){a=1;}}}3、编译下面的程序,并回答问题。classExceptionTest3{publicstaticvoidmain

8、(String[]args){check(-1);}staticvoidcheck(inti){if(i<0)thrownewException();}}(1)上述程序编译是否出错?出错分析错误原因:(2)将上述程序修改为:classExceptionTest3{publicstaticvoidmain(String[]args){check(-1);}staticvoidcheck(inti)th

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

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

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