JAVA练习题(第5章)_第1页
JAVA练习题(第5章)_第2页
JAVA练习题(第5章)_第3页
JAVA练习题(第5章)_第4页
JAVA练习题(第5章)_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、JAVA程序设计练习题 第5章一、选择题1下面关于Java中异常处理try块的说法正确的是( )? (选两项)A. try块后通常应有一个catch 块,用来处理 try块中抛出的异常。 B. catch 块后必须有finally块。C.可能抛出异常的方法调用应放在try块中。 D.对抛出的异常的处理必须放在try块中【答案】:【答案】:A C2以下关于java异常说法不正确的是( )。A. Throwable 类是 Java 语言中Error类和Exception类的父类。B.当异常对象是Exception类(或其子类)的实例时,能通过 Java 虚拟机或者 throw 语句抛出该异常对象,

2、并能通过trycatchfinally处理。C.如果只用一个catch块捕捉多个异常对象,则catch 子句中的参数类型应是所有异常对象的父类。D.以上说法都不对。【答案】:【答案】:D3异常包含下列哪些内容?()A程序执行过程中遇到的事先没有预料到的情况B程序中的语法错误C程序的编译错误D以上都是【答案】:【答案】:A4对于已经被定义过可能抛出异常的语句,在编程时:()A.必须使用trycatch语句处理异常,或用throws将其抛出B如果程序错误,必须使用 trycatch语句处理异常C可以置之不理D只能使用trycatch语句处理【答案】:【答案】:A5java中用来抛出异常的关键字是(

3、)A.try B.catch C.throw D.finally6.关于异常,下列说法正确的是( )A.异常是一种对象B.一旦程序运行,异常将被创建C.为了保证程序运行速度,要尽量避免异常控制D.以上说法都不对【答案】:【答案】:C【答案】:【答案】:A7.( )类是所有异常类的父类。A.ThrowableB.ErrorC.ExceptionD.AWTError8.java语言中,下列哪一子句是异常处理的出口( )A.try子句B.catch子句C.finally子句【答案】:【答案】:A【答案】:【答案】:C9.下列程序的执行,说法错误的是下列程序的执行,说法错误的是1.class Mult

4、iCatch2. 3. public static void main(String args)4. 5. try6. 7. int a=args.length;8. int b=42/a;9. int c=1;10. c42=99;11. System.out.println(“b=”+b);12. 13. catch(ArithmeticException e)14. 15. System.out.println(“除除0异常:异常:”+e);16. 17. catch(ArrayIndexOutOfBoundsException e)18. 19. System.out.println(

5、“数组超越边界异常:数组超越边界异常:”+e);20. 21. 22. String args是是main函数的形式参数,可函数的形式参数,可以用来获取命令行用以用来获取命令行用户输入进去的参数户输入进去的参数(字符串)(字符串) A.程序将输出第15行的异常信息B.程序第10行出错C.程序将输出“b=42”D.程序将输出第19行的异常信息【答案】:【答案】:A10.下列程序的执行,说法正确的是nclass ExMultinn static void procedure()n n tryn n int c=1;n c42=99;n n catch(ArrayIndexOutOfBoundsEx

6、ception e)n n System.out.println(“数组超越界限异常:数组超越界限异常:”+e);n 1. n public static void main(String args)n n tryn n procedure();n int a=args.length;n int b=42/a;n System.out.println(“b=”+b);n n catch(ArithmeticException e)n n System.out.println(“除除0异常:异常:”+e);n n n A.程序只输出第12行的异常信息B.程序只输出第26行的异常信息C.程序将不输

7、出异常信息D.程序将输出第12行和第26行的异常信息【答案】:【答案】:D11. ( )下列常见的系统定义的异常中,哪个是输入、输出异常? AClassNotFoundException BIOException CFileNotFoundException DUnknownHostException12. 在java中,在尝试对null 对象操作时,会产生( )类型的异常。A. ArithmeticException B. NullPointerExceptionC. IOException D. EOFException【答案】:【答案】:B【答案】:【答案】:B13. 在java 的异常

8、处理模型中,无论是否发生异常,( )块中的代码都会被执行。A.tryB.catchC.finallyD.throw14. 下面关于try catch和finally的陈述哪项是错误的()A.try块后必须跟着catch块B.try块后可以跟着catch块或finally块,或二者皆可C.catch块必须与try块一起使用D.finally块必须与try块一起使用【答案】:【答案】:C【答案】:【答案】:A二、填空题1.catch子句都带一个参数,该参数是某个异常的类及其变量名,catch用该参数去与_对象的类进行匹配。2.java虚拟机能自动处理_异常。3.变量属性是描述变量的作用域,按作用域

9、分类,变量有局部变量、类变量、方法参数和_4.同一段程序可能产生不止一种异常。可以放置多个_子句,其中每一种异常类型都将被检查,第一个与之匹配的就会被执行。5.捕获异常要求在程序的方法中预先声明,在调用方法时用try-catch-_ _语句捕获并处理。抛出异常抛出异常运行运行异常处理参数异常处理参数catchfinally6.java语言认为那些可预料和不可预料的出错称为_7.按异常处理不同可以分为运行异常、捕获异常、声明异常和_几种。8.抛出异常的程序代码可以是_或者是JDK中的某个类,还可以是JVM.9.抛出异常、生成异常对象都可以通过_语句实现。10.捕获异常的统一出口通过_语句实现。1

10、1.java语言的类库中提供了一个_ _类,所有的异常都必须是它的实例或它子类的实例。12.Throwable类有两个子类:_ _类和Exception类。13.对程序语言而言,一般有编译错误和_错误两类。异常异常抛出异常抛出异常java应用程序应用程序throwfinallyThrowableError运行运行14.下面程序定义了一个字符串数组,并打印输出,捕获数组超越界限异常。请在横线处填入适当的内容完成程序。npublic class HelloWorld npublic static void main(String args )n int i=0;n String greetings

11、=n n “Hello world!”,n “No,I mean it!”,n “HELLO WORLD!”n ;n while(i4)n n _n trynSystem.out.println(greetingi);nn_ ArrayIndexOutOfBoundsException e)nnSystem.out.println(“Re-setting Index Value”);ni=-1;n finallyn n System.out.println(“This is always printed”);n ni+;nnncatch三、读程序写结果1public class Uncheck

12、ed public static void main(String args) try method(); catch (Exception e) System.out.println(A); finally System.out.println(B); static void method() try wrench(); System.out.println(C); catch (ArithmeticException e) System.out.println(D); finally System.out.println(E); System.out.println(F); static

13、void wrench() throw new NullPointerException(); EAB2public void test() try oneMethod(); System.out.println(condition 1); catch (ArrayIndexOutOfBoundsException e) System.out.println(condition 2); catch(Exception e) System.out.println(condition 3); finally System.out.println(finally); 在oneMethod()方法运行

14、正常的情况下将显示什么?condition 1 finally3. class MyException extends Exceptionpublic String toString( )return negative; public class ExceptionDemopublic static void mySqrt(int a) throws MyExceptionif( a0 ) throw new MyException();System.out.println(Math.sqrt(a); public static void main( String args )try mySq

15、rt(25 ); mySqrt(-5 ); catch( MyException e ) System.out.println(Caught +e); 5.0Caught negative4. public class ExceptionDemo public static void main (String args) int array1=6,0,8; for(int i=0; i=array1.length;i+) try int d=100/array1i; System.out.println(正常:d=+d); catch(ArithmeticException e) System

16、.out.println(算术异常!); catch(ArrayIndexOutOfBoundsException e) System.out.println(“下标越界异常!”); finally System.out.println(异常处理结束!); 正常:正常:d=16异常处理结束!异常处理结束!算术异常!算术异常!异常处理结束!异常处理结束!正常:正常:d=12异常处理结束!异常处理结束!下标越界异常!下标越界异常!异常处理结束!异常处理结束!5. class Excestatic void genException( ) int array =new int 5; try arra

17、y5=5; catch (ArrayIndexOutOfBoundsException e) System.out.println(抛出异常); throw e; System.out.println(正常退出!); public class Example public static void main(String args ) try Exce. genException( ); catch(ArrayIndexOutOfBoundsException e) System.out.println(处理异常); 抛出异常抛出异常 处理异常处理异常6. class noIntExce ext

18、ends Exception int a,b; noIntExce(int i, int j) a=i; b=j; public String toString( ) retrun a+/+b+不是整型结果; public class Example pulic static main (String args ) int i=0, j=3; while(i+6) try if(i%j! =0) throw new noIntExce(i, j); System.out.println(正常退出); catch (noIntExce e) System.out.println(e); 1/3不

19、是整型结果不是整型结果 2/3不是整型结果不是整型结果正常退出正常退出4/3不是整型结果不是整型结果 5/3不是整型结果不是整型结果正常退出正常退出四、程序填空题1. class _ extends Exception String mymsg=我自己定义的异常!; double mynum = 2.0; MyException () super(首字母不能为A! ); MyException (String msg)_ /调用父类构造方法,参数为 msg public void displayme() System.out.println(mymsg); public double mymethod() return Math.sqrt(mynum); class ExceptionTest public static void main(String args) try if ( argsO.charAt(O)= A) MyException e = new MyException();MyException super(msg)System.out.println(kkkk: + e.mymet

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论