系统差异。Java中的exit(0),System.exit(-1),System.exit(1)

我想知道以下Java之间的区别


System.exit(0);

System.exit(-1);

System.exit(1);

什么时候必须适当使用以上代码?


POPMUISE
浏览 1302回答 3
3回答

Smart猫小萌

如果程序执行的好坏,则exit参数应为合格。这是较早的编程语言的一种遗传,在这种情况下,了解是否出了什么问题以及出了什么问题是很有用的。退出代码为0 当执行顺利时;1,-1,whatever != 0发生了一些错误时,可以为不同类型的错误使用不同的值。如果我是正确的,则退出代码过去只能是正数(在UNIX中是指),并根据范围:1-127是用户定义的代码(因此通过调用生成exit(n))128-255是由于不同的unix信号(例如SIGSEGV或SIGTERM)而由终止生成的代码但是我认为您在使用Java进行编码时不应该在乎,它只是一些信息。如果您计划使程序与标准工具进行交互,这将很有用。

慕的地6264312

Zero =>一切都好Positive =>我预期可能会出错的东西出错了(错误的命令行,找不到文件,无法连接到服务器)Negative=>我根本没想到的事情出了问题(系统错误-意外的异常-外部强制终止,例如kill -9)(大于128的值实际上是负数,如果您将其视为8位带符号二进制或二进制补码)这里有很多好的标准退出代码

繁华开满天机

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更高级别,则用于失败执行。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java