【问题标题】:Java exception handling: catch an exception thrown by an external dependency moduleJava异常处理:捕获外部依赖模块抛出的异常
【发布时间】:2017-04-05 15:47:18
【问题描述】:

我从模块 A 中调用来自模块 B 的类(这只是我无法修改的依赖项):在模块 B 的类内部引发了 NullPointerException。我需要在调用此模块 B 类时捕获此 NullPointerException。

请注意,NullPointerException 不会在运行时出现,而是通过“throw”显式抛出

理论上,我能做到吗?

【问题讨论】:

  • 是的,只是 try - catch BA 类中调用。
  • 你试过抓住它吗?检查很简单。根据您的解释,它应该表现为类路径中的任何库。您可以捕获属于这些库的异常,对吗?不过,在现实世界中捕获 NullPointerException 并不奇怪。

标签: java exception throw


【解决方案1】:

Java 不知道模块或者您是否可以修改它们,所以这照常工作:

如果语句抛出异常,它将被传递到调用者的第一个匹配的 catch 块。因此,如果模块 B 没有捕获到异常,它将到达您的 catch 块。

【讨论】:

    猜你喜欢
    • 2012-04-26
    • 1970-01-01
    • 2013-06-24
    • 1970-01-01
    • 1970-01-01
    • 2018-03-23
    • 2013-07-24
    • 1970-01-01
    • 2016-02-17
    相关资源
    最近更新 更多