我想知道以下Java语言的不同之处
System.exit(0);
System.exit(-1);
System.exit(1);什么时候我必须适当地使用上面的代码?
发布于 2010-03-13 01:37:01
exit的参数应该限定程序的执行是好是坏。这是一种来自旧的编程语言的遗传,在旧的编程语言中,知道是否出了问题以及出了什么问题是很有用的。
退出代码是
0 when execution when fine;1,-1,whatever != 0当某些错误发生时,您可以对不同类型的错误使用不同的值。如果我是正确的,退出代码过去只是正数(我的意思是在UNIX中),并根据范围:
1-127是用户定义的代码(因此,通过调用exit(n))128-255生成的代码是由于不同的unix信号而由终端生成的代码,如SIGSEGV或unix但我不认为在Java上编码时你应该关心,这只是一点信息。如果你打算让你的程序与标准工具交互,这是很有用的。
发布于 2012-11-06 16:42:38
Zero =>一切都好
Positive =>一些我认为可能会出错的东西出错了(错误的命令行,找不到文件,无法连接到服务器)
Negative =>一些我完全没有预料到的错误(系统错误-意外异常-外部强制终止,例如kill -9)
(如果您将其视为8位有符号二进制或二进制补码,则大于128的值实际上是负数)
有很多好的standard exit-codes here
发布于 2015-07-27 15:05:54
System.exit(system call)通过启动虚拟机的关闭序列来终止当前正在运行的虚拟机。该参数用作状态代码。
按照惯例,非零状态代码表示异常终止。
System.exit(0) or EXIT_SUCCESS; ---> Success
System.exit(1) or EXIT_FAILURE; ---> Exception
System.exit(-1) or EXIT_ERROR; ---> Error有关更多信息,请访问Java
在Unix和Linux系统上,0表示成功执行,1或更高版本表示失败执行。
https://stackoverflow.com/questions/2434592
复制相似问题