【问题标题】:Can main method return error code if program crashes?如果程序崩溃,main方法可以返回错误代码吗?
【发布时间】:2019-03-24 13:29:36
【问题描述】:

我想知道

public static void main (String args [])

如果程序崩溃可以返回任何错误代码吗?如果不是,为什么会这样?仅仅是因为返回类型 void 吗?如果我将返回类型更改为其他类型,它是否能够返回错误代码?

我很自然地在互联网上搜索了这个,我相信有人问过类似的问题,但我仍然不明白它背后的原因。

【问题讨论】:

  • 设置进程退出代码可以使用java.lang.System.exit(int)调用。
  • 不能改变那个main方法的返回类型,否则JVM会报错:Error: Main method must return a value of type void

标签: java main error-code


【解决方案1】:

如果程序崩溃可以返回任何错误代码吗?

不,因为返回类型是void

但是当 main 方法返回时不会退出 Java 程序。它发生在最后一个非守护线程停止时,或者当System.exit() 被调用时。 System.exit() 将整数作为参数。因此,如果您希望 Java 进程以状态 42 结束,您只需调用 System.exit(42)

【讨论】:

    猜你喜欢
    • 2018-12-08
    • 2011-01-31
    • 1970-01-01
    • 2011-02-28
    • 2011-01-29
    • 1970-01-01
    • 2021-02-20
    • 2021-06-21
    • 1970-01-01
    相关资源
    最近更新 更多