关于异常处理,说法错误的是?()
A: try…catch…finally结构中,必须有try语句块,catch语句块和finally语句块不是必须的,但至少要两者取其一
B: 在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch中的参数类型有父类子类关系,此时应该将子类放在后面,父类放在前面
C: 一个方法可以抛出多个异常,方法的返回值也能够是异常
D: Throwable是所有异常的超类
A: try…catch…finally结构中,必须有try语句块,catch语句块和finally语句块不是必须的,但至少要两者取其一
B: 在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch中的参数类型有父类子类关系,此时应该将子类放在后面,父类放在前面
C: 一个方法可以抛出多个异常,方法的返回值也能够是异常
D: Throwable是所有异常的超类
举一反三
- 在异常处理中,若try中的代码可能产生多种异常则可以对应多个 catch 语句,若 catch 中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面
- 若try代码块中可能产生多种类型的异常,则可以用多个catch语句分别捕捉处理,若这些catch捕捉的异常类型之间存在继承关系,则应将父类异常放在前面捕捉,子类异常放在后面捕捉。
- 若try语句块后面跟多个catch,则catch子句根据其异常参数的排列方式,下面正确的是()。 A: 子类异常在前,父类异常在后。 B: 父类异常在前,子类异常在后。 C: 只能有具有同一个父类的子类异常。 D: 父类异常和子类异常不能出现在同一个try程序段中。
- 下列关于 try-catch-finally 语句的描述中,错误的是( ) A: try 语句可以独立存在 B: catch 块跟在 try 语句后面,它可以是一个或多个 C: catch 块有一个参数,该参数是某种异常类的对象 D: 多重 catch 语句中,异常类型必须子类在前父类在后
- 有关下列异常处理机制叙述正确的是()。try{可能产生异常的语句块;}catch(exceptiontype1e){处理异常e的语句块;}catch(exceptiontype2e){处理异常e的语句块;}……finally{最终处理语句块;} A: try子句可能有多个,catch子句可能有多个,finally子句必须有。 B: 多个catch参数中的异常类可以有父子关系,但父类异常的catch子句应该在子类异常的catch子句前面。 C: 如果try子句没有抛出任何异常,则跳过catch子句,转移到finally子句继续执行。 D: 当try子句监视的语句块抛出异常时,运行时系统会根据catch子句的顺序,从第一个开始,逐个查找能够捕获该异常的catch子句并执行catch子句内的语句块以完成对异常的处理,然后继续执行后面的catch子句,最后转移到finally子句,执行该子句中的语句块。