当前位置: 首页 > 面试题库 >

在Java 7 multicatch块中,捕获的异常的类型是什么?

蒋啸
2023-03-14
问题内容

在Java 7 multicatch块中,如下所示:

try {
    // code that throws exception
} catch (CharacterCodingException | UnknownServiceException ex) {
    // handle exception
}

什么是的编译时类型ex?这是两种异常类型共有的最派生的类吗?在此示例中,这将是IOException


问题答案:

是的,类型ex是双方的最具体的超类型CharacterCodingExceptionUnknownServiceException,这将是IOException

编辑:直接从

Informally, the lub (least upper bound) is the most specific supertype of
the types in question.



 类似资料:
  • 问题内容: e是Exception类型,但在以下代码中显示Exception1: 根据我的研究,“ e”应为Exception类型,它是Exception1和Exception2的通用基类。从第1行的消息可以明显看出这一点。 但是为什么: ?谢谢。 问题答案: 当您使用 多catch子句 (的形式),在编译时类型是最大的类型两种类型的共同点,因为课程的代码必须处理两种类型exception.Fro

  • 问题内容: 我想一个更清洁的方式来获得以下功能,以捕捉和在一个块: 有什么办法吗?还是我必须分开抓住它们? 并具有一个共享的基类,但它们也与其他我要介绍的类型共享它,因此我不能只抓住基类。 问题答案: 更新: 从PHP 7.1开始,此功能可用。 语法为: 文件:https://www.php.net/manual/en/language.exceptions.php#example-287 RFC

  • 我正在查看Java SE7的新功能,目前我正在: http://docs.oracle.com/javase/7/docs/technotes/guides/language/catch-multiple.html 关于捕获多重功能,当我遇到这个语句时: 注意:如果一个捕捉块处理多个异常类型,那么捕捉参数是隐式最终的。在这个例子中,捕捉参数ex是最终的,因此您不能在捕捉块中给它赋值。 我从未注意到

  • 找不到指定的模型:User\u model Filename:/opt/lampp/htdocs/ci/system/core/Loader。php 电话号码:348 回溯: 文件:/opt/lampp/htdocs/ci/index。php行:315函数:需要一次 我试图改变名称,但它不工作......这个代码模型

  • 问题内容: 我正在检查Java SE7的新功能,目前我正在: http://docs.oracle.com/javase/7/docs/technotes/guides/language/catch- multiple.html 关于捕获多个功能,当我遇到以下语句时: 注意:如果catch块处理多个异常类型,则catch参数隐式为final。在此示例中,catch参数ex是最终的,因此您不能在ca

  • 问题内容: 有人告诉我,在Java中,可以在try块中捕获未检查的异常,但是如果捕获了它,就不称为已检查的异常吗? 问题答案: 未检查的异常是不需要在- 块中捕获的异常。未检查的异常是或类的子类。 已检查的异常是需要在- 块中捕获的异常。 可在Java语言规范的11.2节:编译时检查异常中找到检查和未检查异常的定义: 未检查的异常类是类及其子类,以及类及其子类。所有其他异常类都是检查的异常类。 仅