3 回答
TA贡献1911条经验 获得超7个赞
如果程序执行的好坏,则exit参数应为合格。这是较早的编程语言的一种遗传,在这种情况下,了解是否出了什么问题以及出了什么问题是很有用的。
退出代码为
0
当执行顺利时;1
,-1
,whatever != 0
发生了一些错误时,可以为不同类型的错误使用不同的值。
如果我是正确的,则退出代码过去只能是正数(在UNIX中是指),并根据范围:
1-127
是用户定义的代码(因此通过调用生成exit(n)
)128-255
是由于不同的unix信号(例如SIGSEGV或SIGTERM)而由终止生成的代码
但是我认为您在使用Java进行编码时不应该在乎,它只是一些信息。如果您计划使程序与标准工具进行交互,这将很有用。
TA贡献1817条经验 获得超6个赞
Zero =>一切都好
Positive =>我预期可能会出错的东西出错了(错误的命令行,找不到文件,无法连接到服务器)
Negative=>我根本没想到的事情出了问题(系统错误-意外的异常-外部强制终止,例如kill -9)
(大于128的值实际上是负数,如果您将其视为8位带符号二进制或二进制补码)
这里有很多好的标准退出代码
TA贡献1816条经验 获得超4个赞
System.exit(system call)通过启动其关闭序列来终止当前正在运行的Java虚拟机。参数用作状态码。
按照惯例,非零状态代码表示异常终止。
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更高级别,则用于失败执行。
添加回答
举报