系统差异。exit(0) , System.exit(-1), System.exit(1) 在 Java 中
2022-08-31 05:07:54
我想知道Java中的以下内容之间的区别
System.exit(0);
System.exit(-1);
System.exit(1);
我什么时候必须适当地使用上述代码?
我想知道Java中的以下内容之间的区别
System.exit(0);
System.exit(-1);
System.exit(1);
我什么时候必须适当地使用上述代码?
exit 参数应符合程序执行是好是坏。这是一种来自旧编程语言的遗传,在旧编程语言中,知道是否出了问题以及出了什么问题很有用。
退出代码为
0
当执行顺利时;1
、,当发生某些错误时,您可以对不同类型的错误使用不同的值。-1
whatever != 0
如果我是正确的,退出代码曾经只是正数(我的意思是在UNIX中),并且根据范围:
1-127
是用户定义的代码(因此通过调用生成exit(n)
)128-255
是由不同的unix信号(如SIGSEGV或SIGTERM)终止生成的代码
但是我不认为你应该在Java上编码时关心,它只是一些信息。如果您计划使程序与标准工具进行交互,这将非常有用。
Zero
=> 一切都好
Positive
=> 我预期可能出错的东西出错了(命令行错误,找不到文件,无法连接到服务器)
Negative
=> 我完全没有想到的事情出错了(系统错误 - 意外的异常 - 外部强制终止,例如kill -9
)
(大于 128 的值实际上是负数,如果您将其视为 8 位有符号二进制或二进制补码)
这里有一堆很好的标准退出代码