题目 异常处理

题目 异常处理

  1. 类Parent、Child定义如下:

public class Parent

{ public float aFun(float a, float b) throws

IOException { ...... }

}

public class Child extends Parent{

} 将以下哪种方法插入行6是不合法的。( ) [单选题] *

float aFun(float a, float b){...... }(正确答案)

public int aFun(int a, int b)throws Exception{ ......}

public float aFun(float p, float q){ ......}

public int aFun(int a, int b)throws IOException{ ...... }

  1. 下列哪个叙述是错误的?

单选题\] \* 匿名子类(和子类有关的匿名类)的类体中不可以声明static成员变量和static方法 接口匿名类(和接口有关的匿名类)的类体中不可以声明static成员变量和static方法 匿名类一定是内部类 Java使用throws关键字抛出一个Exception的子类的实例表示异常发生(正确答案) 3. 下列哪个叙述是错误的? \[单选题\] \* try...catch语句可以由几个catch组成,分别处理发生的相应异常 一个方法在声明时可以使用throws关键字声明要产生的若干个异常 一个方法在声明时可以使用throw关键字声明要产生的若干个异常(正确答案) throw的作用就是抛出异常对象,throw和throws是两个不同的关键字 4. 必须要对出现的异常进行处理,否则不能运行的异常类是( ) \[单选题\] \* Exception类 Error类 RuntimeException类 Exception类中的非RuntimeException类(正确答案) 5. 下面关于Java中异常处理try块的说法不正确的是( ) \[单选题\] \* try块后通常应有一个catch 块,用来处理try块中抛出的异常。 catch 块后可以没有finally块 可能抛出异常的方法调用应放在try块中 对抛出的异常的处理必须放在try块中(正确答案) 6. 以下关于java异常说法不正确的是( )。 \[单选题\] \* Throwable 类是 Java 语言中Error类和Exception类的父类 当异常对象是Exception类(或其子类)的实例时,能通过 Java 虚拟机或者 throw 语句抛出该异常对象,并能通过try...catch...finally处理 如果只用一个catch块捕捉多个异常对象,则catch 子句中的参数类型应是所有异常对象的父类(正确答案) 以上说法都不对 7. 对于已经被定义过可能抛出异常的语句,在编程时:(  ) \[单选题\] \* 必须使用try/catch语句处理异常,或用throws将其抛出(正确答案) 如果程序错误,必须使用 try/catch语句处理异常 可以置之不理 只能使用try/catch语句处理 8. 所有的异常和错误类皆继承哪一个类?( ) \[单选题\] \* java.io.Exception java.lang.Throwable(正确答案) java.lang.Exception java.lang.Error 9. getCustomerInfo()方法如下,try中可以捕获三种类型的异常,如果在该方法运行中产生了一个IOException,将会输出什么结果() public void getCustomerInfo() { try { // do something that may cause an Exception } catch (java.io.FileNotFoundException ex) { System.out.print(""FileNotFoundException!""); } catch (java.io.IOException ex) { System.out.print(""IOException!""); } catch (java.lang.Exception ex) { System.out.print(""Exception!""); } } \[单选题\] \* IOException!(正确答案) IOException!Exception! FileNotFoundException!IOException! FileNotFoundException!IOException!Exception! 10. 程序读入用户输入的一个值,要求创建一个自定义的异常,如果输入值大于10,使用throw语句显式地引发异常,异常输出信息为"something wrong!",语句为()。 \[单选题\] \* A. if (i\>10) throw Exception("something wrong!"); B. if (i\>10) throw Exception e ("something wrong!"); C. if (i\>10) throw new Exception("something wrong!");(正确答案) D. if (i\>10) throw new Exception e ("something wrong!"); 11. 分析下列Java代码: class A{ public static void main(String\[ \] args){ method( ); } static void method( ){ try{ System.out.println("Hello"); System.exit(0); }finally{ System.out.println("good-bye"); } } } 编译运行后,输出结果是( ) \[单选题\] \* A. Hello(正确答案) B. good-bye C. Hello \\n good-bye D. 代码不能编译 12. 在Java 中,假定有一个包含引起异常(不是一个RuntimeException)的代码的方法,用什么方式告诉方法的调用者要捕获该异常。() \[单选题\] \* A. throw Exception B. throws Exception(正确答案) C. new Exception D. 不用特别指定 13. 研究下面的Java代码: public class testException{ public static void main(String\[ \] args){ int a\[ \]={0,1,2,3,4}; int sum=0; try{ for(int i=1;i\<6;i++) sum=sum+a\[i\]; System.out.println("sum=" + sum); }catch(ArrayIndexOutOfBoundsException e){ System.out.println("数组越界"); }finally{ System.out.println("程序结束"); } } } 输出结果将是( )。 \[单选题\] \* A. 10 数组越界\\n 程序结束 B. 10 程序结束 C. 数组越界 \\n 程序结束(正确答案) D. 程序结束 14. 下列说法正确的是() 多选 \* try块不可以省略(正确答案) 可以使用多重catch块(正确答案) finally块可以省略(正确答案) catch块和finally块可以同时省略 15. 给出下面的不完整的方法 1 2 { success = connect(); 3 if (success==-1) { 4 throw new TimedOutException(); 5 } 6 } 已知TimedOutException 不是一个RuntimeException。下面的哪些声明可以被加入第一行完成此方法的声明( ) \* public void method() public void method() throws Exception(正确答案) public void method() throws TimedOutException(正确答案) public void method() throw TimedOutException 16. 关于异常(Exception),下列描述正确的是( ) \* 异常的基类为 Exception,所有异常都必须直接或者间接继承它 异常可以用 try{ . . .}catch(Exception e){ . . .}来捕获并进行处理(正确答案) 如果某异常继承 RuntimeException,则该异常可以不被声明(正确答案) 异常可以随便处理,而不是抛给外层的程序进行处理

相关推荐
不想写bug呀1 小时前
多线程案例——单例模式
java·开发语言·单例模式
心平愈三千疾2 小时前
通俗理解JVM细节-面试篇
java·jvm·数据库·面试
我不会写代码njdjnssj2 小时前
网络编程 TCP UDP
java·开发语言·jvm
第1缕阳光2 小时前
Java垃圾回收机制和三色标记算法
java·jvm
funnyZpC2 小时前
好用的文档工具👉smart-doc
java
一只叫煤球的猫2 小时前
🔥 同事混用@Transactional和TransactionTemplate被我怼了,三种事务管理到底怎么选?
java·spring boot·后端
华子w9089258599 天前
基于 SpringBoot+JSP 的医疗预约与诊断系统设计与实现
java·spring boot·后端
feifeigo1239 天前
Java 正则表达式高级用法
java·mysql·正则表达式
empti_9 天前
Java中的List实现类详解
java
亲爱的非洲野猪9 天前
一次性理解Java垃圾回收--简单直接方便面试时使用
java·jvm·面试