java学习 第五章练习题

单选题

1、下列符号中,用于分隔throws关键字抛出的多个异常的是()

  • A、A、;

  • B、B、,

  • C、C、&

  • D、D、|

参考答案 :B

 

2、异常类都继承自java.lang包下的()

  • A、A、Error类

  • B、B、Exception类

  • C、C、Throwable类

  • D、D、IOError类

参考答案 :C

3、下列异常声明中正确的是()

  • A、A、public void throws IOException fun(){}

  • B、B、public void fun throws IOException(){}

  • C、C、public void fun() throws IOException{}

  • D、D、public void fun() throws IOException,throws SQLException{}

参考答案 :C

4、以下关于编译异常的说法中正确的是()

  • A、A、编译异常就是指Exception类及其子类

  • B、B、编译异常如果产生,可以不用处理

  • C、C、编译异常如果产生,就必须处理,要么捕获,要么抛出

  • D、D、编译异常指的就是Error

参考答案 :C

5、下面程序中运行时会报异常的是()

  • A、A、int result = 4/0;System.out.println(result)

  • B、B、int[] arr = new int[5];System.out.println(arr[6]);

  • C、C、int[] arr = new int[3];System.out.println(arr[4])

  • D、D、以上选项都错了

参考答案 :D

6、使用自定义的异常类,需要用到的关键字是()

  • A、A、try

  • B、B、catch

  • C、C、finally

  • D、D、throw

参考答案 :D

7、下列关于throws关键字的描述中,正确的是()

  • A、A、thorws可以声明在方法上也可以声明在方法体中

  • B、B、方法上使用throws抛出一个异常则这个方法中一定有try catch代码块

  • C、C、使用throws抛出多个异常时各个异常之间必须使用逗号隔开

  • D、D、throws必须和throw配合使用

参考答案 :C

答案说明 :throws关键字声明抛出异常的语法格式如下:修饰符返回值类型方法名([参数1,参数2.....])throws ExceptionType1[,ExceptionType2.....]{ } 

8、在异常处理时,进行释放资源、关闭文件等操作需要的语句是()。

  • A、A、try

  • B、B、catch

  • C、C、finally

  • D、D、throw

参考答案 :C

答案说明 :finally主要用于回收在try代码块里打开的物理资源,如数据库连接、网络连接和磁盘文件。异常机制保证finally代码块总是被执行。

9、下列选项中,是所有异常类的父类是()

  • A、A、Throwable

  • B、B、Error

  • C、C、Exception

  • D、D、RuntimeException

参考答案 :A

10、下面对Throwable类常用的方法的功能描述错误的是()

  • A、A、String getMessage()方法返回异常的消息字符串

  • B、B、String toString()方法返回异常的简单信息描述

  • C、C、void printStackTrace()方法获取异常类名和异常信息以及异常出现在程序中的位置,把信息输出到控制台

  • D、D、String toString()方法返回异常的消息字符串

参考答案 :D

多选题

11、程序运行中,异常是否出现,通常取决于()

  • A、A、程序的输入

  • B、B、程序中对象的当前状态

  • C、C、程序所处的运行环境

  • D、D、是否对异常进行处理

参考答案 :A,B,C

答案说明 :异常是否出现,通常取决于程序的输入、程序中对象的当前状态以及程序所处的运行环境。

12、下列关于try...catch和finally的组合使用,格式正确的有()

  • A、A、try{}

  • B、B、try{ }catch(ExceptionType1(Exception子类) e1){ } catch(ExceptionType2(Exception类及其子类) e2){ }

  • C、C、try{ }catch(ExceptionType(Exception类及其子类) e){ }finally{ }

  • D、D、try{ }finally{ }

参考答案 :B,C,D

13、下列选项中,属于运行时异常的有()

  • A、A、ArithmeticException

  • B、B、IndexOutOfBoundsException

  • C、C、ClassCastException

  • D、D、NullPointerException

参考答案 :A,B,C,D

14、下列关于throws的描述中,正确的有()

  • A、A、throws是用来声明一个方法可能抛出的异常信息

  • B、B、throws语句用在方法声明后面

  • C、C、方法中没有使用catch处理的异常必须使用throws抛出

  • D、D、throws关键字对外声明该方法有可能发生的异常,调用者在调用方法时必须在程序中对异常进行处理

参考答案 :A,B,C,D

判断题

15、在一个异常处理中,finally语句块只能有一个,也可以没有。()

参考答案 :对

 

16、throw关键字用于方法体内,抛出的是一个异常实例,每次能抛出多个异常实例。()

参考答案 :错

答案说明 :throw关键字用于方法体内,抛出的是一个异常实例,并且每次只能抛出一个异常实例。

17、运行时异常一般是由程序中的逻辑错误引起的,在程序运行时可以恢复。()

参考答案 :错

答案说明 :运行时异常一般是由程序中的逻辑错误引起的,在程序运行时无法恢复。

18、在Java语言中如果发生异常,但没有捕获异常的代码,程序会正常执行。()

参考答案 :错

答案说明 :当程序中出现运行时异常时,即使没有使用try…catch语句捕获异常或使用throws关键字声明抛出异常, 程序也能编译通过,只是程序在运行过程中可能报错。

19、在处理异常时,try语句块中存放可能发生异常的语句。()

参考答案 :对

20、Throwable有两个直接子类——Error和Exception,其中Error代表程序中产生的异常,Exception代表程序中产生的错误。()

参考答案 :错

答案说明 :Throwable类是所有异常类的父类,它有两个直接子类——Error类和Exception类,其中,Error类代表程序中产生的错误,Exception类代表程序中产生的异常。

你可能感兴趣的:(java,开发语言)