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

默认情况下,命令行Java应用程序中未处理的异常在哪里打印?要stdout还是stderr?

富念
2023-03-14
问题内容

标题包含整个问题。我也很高兴提供指向包含答案的文档的链接。


问题答案:

在Java中,未处理的异常会累积到引发它们的线程的顶部。Java允许您安装线程级未捕获的异常处理程序。据我所知,Java规范未定义未指定默认异常处理程序时的行为。Sun的JDK观察到的默认行为是将异常消息及其堆栈跟踪信息打印到stderr。



 类似资料:
  • 问题内容: 在Java中,我们使用try catch块处理异常。我知道我可以像下面这样编写一个try catch块来捕获方法中抛出的任何异常。 但是Java中有什么方法可以让我在发生异常时获取一种称为的特定方法,而不是像上面的方法那样编写一个包罗万象的方法? 具体来说,当抛出异常(我的应用程序逻辑未处理)时,我想在Swing应用程序中显示一条用户友好的消息。 谢谢。 问题答案: 默认情况下,JVM

  • 问题内容: 如果我在.NET中没有记错的话,可以为未处理的异常注册“全局”处理程序。我想知道Java是否有类似的东西。 问题答案: 是的,有,但只有在没有设置时才会触发。

  • 我想知道firebase fcm实例id令牌在android手机上存储在哪里。我已经知道如何使用生成firebase令牌。 我想知道android如何以及在设备上存储这个令牌,因为每次我运行这个方法时,令牌都是一样的(除了令牌重新生成时)。我有一个根电话,所以我检查了我的应用程序的所有数据库和首选项文件,但令牌没有存储在其中任何一个。因为令牌每次都是一样的,所以它必须存储在手机的某个地方。有人知道

  • 我有一个发布Runnables的处理程序(线程)。如果Runnable错误地抛出RuntimeException,整个应用程序进程就会崩溃。作为默认情况,这听起来很明智,但我想捕获此类运行时异常,记录错误,然后继续运行。不过,我很难做到这一点。我想到了以下选项: 子类并覆盖,其中包含调用发布的Runnables的方法的代码。这不起作用,因为是最终的。 子类并覆盖调用的run方法。在运行时异常的情况

  • 你好,我正在学习OOP,通过编写一个虚拟的库管理项目在Java。 在serachBook()中,如果在ArrayList中找到book,则返回book对象,如果未找到,则抛出自定义异常BookNotFound。 问题1:它应该只返回null并在调用代码时检查返回值是否为null,还是抛出自定义异常BookNotFound。 目前我认为BookNotFinder是合适的,并且目前正在这样做。然而,我

  • 问题内容: 我有一个小的Go工具,该工具基本上允许用户定义一个命令,该命令将使用来运行。 我的问题是我想向用户显示命令的输出(stdout / stderr)。 一个示例可能看起来像这样:用户定义一个命令,最后是。 test.sh的 内容: 在我当前的实现中,用户仅在完成完整命令后才能看到输出。在上面的示例中,用户直到命令和第二次完成才看到输出 Start 。 我目前正在检索命令的输出,如下所示: