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

Java中的System.exit(0)

慎兴业
2023-03-14
问题内容

我正在使用swing编写应用程序。我通过点击需要退出该应用程序JButton为我可以使用System.exit()或我应该使用一些其他的方法,这是最好的做法。如果调用System.exit()不是最佳实践,请告诉原因并告诉退出应用程序的其他方法。


问题答案:

从个性上讲,我确实认为让应用程序自行退出是最佳实践:如果您使用编写main(String[] args)带有空代码的主类,则运行它会从Java程序静默退出。

但是,在大多数情况下,就像大多数开发人员一样,我依赖,尤其是对于Swing应用程序,如justkt所写,Swing
EDT将无限地运行。我避免通过调用来设置关闭挂钩,这将使我能够清理应用程序(关闭线程,等等)。System.exit(/ _an exit code_/)``[Runtime.addShutdownHook(Thread)](http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Runtime.html#addShutdownHook\(java.lang.Thread\))



 类似资料:
  • 问题内容: 我想知道以下Java之间的区别 什么时候必须适当使用以上代码? 问题答案: 如果程序执行的好坏,则exit参数应为合格。这是较早的编程语言的一种遗传,在这种情况下,了解是否出了什么问题以及出了什么问题是很有用的。 退出代码为 执行良好时; 发生了一些错误时,可以为不同类型的错误使用不同的值。 如果我是正确的,则退出代码过去只是正数(在UNIX中是指),并根据范围: 是用户定义的代码(因

  • 问题内容: 我使用的第三方库在遇到异常时会执行a 。我从jar里使用API​​。无论如何,由于它导致我的应用程序关闭,我可以阻止该调用吗?由于其他许多许可问题,在删除后我无法反编译和重新编译jar 。我曾经在中遇到一个[我不记得的其他问题]的答案,我们可以使用Java来做这样的事情。 问题答案: 基本上,它会安装一个安全管理器,该安全管理器会使用此处的代码禁用,

  • 问题内容: 在上面的代码中用于停止程序。该方法采用什么论点?我们为什么给它作为?谁能解释这个概念? 问题答案: 从JAVA文档中: 参数用作状态码;按照惯例,非零状态代码表示异常终止。 和维基百科增加了额外的信息。

  • 问题内容: 这两种方法- 和之间有什么区别? 如果我们想在单击按钮时关闭Java Swing应用程序,应该使用哪种方法? 问题答案: 导致Java VM完全终止。 导致窗口被操作系统破坏和清理。根据文档,如果没有其他可用的Windows,这可能会导致Java VM终止,但这实际上应被视为副作用,而不是正常现象。 您选择的那个取决于您的情况。如果要终止当前Java VM中的所有内容,则应使用并且所有

  • 问题内容: 我有一些应调用某些输入的方法。不幸的是,测试这些情况会导致JUnit终止!将方法调用放在新的Thread中似乎无济于事,因为终止JVM不仅终止当前线程。有什么通用的模式可以处理吗?例如,我可以用存根替换吗? [编辑]有问题的类实际上是我要在JUnit中测试的命令行工具。也许JUnit根本不是适合该工作的工具?欢迎提出补充回归测试工具的建议(最好是与JUnit和EclEmma很好地集成在

  • 问题内容: 我正在为现有的Java Swing应用程序执行一些测试,以便可以安全地重构和扩展代码而不会破坏任何内容。我从JUnit中的一些单元测试开始,因为这似乎是最简单的入门方法,但是现在我的首要任务是创建一些端到端测试,以对整个应用程序进行练习。 我将每种测试方法放在一个单独的测试用例中,并在Ant的任务中使用该选项,从而在每个测试中重新启动应用程序。但是,我想作为测试实现的一些用例涉及用户退