gpt4 book ai didi

java - 从 Java 代码返回值

转载 作者:IT老高 更新时间:2023-10-28 20:55:25 25 4
gpt4 key购买 nike

有一个 Java 类创建一个 POST 请求并将其发送到一个 servlet。类文件(test)的主要方法如下所示:

public static void main(String[] args) throws IOException {
// Code logic goes here...
// No return Statement
}

这是从 KornShell (ksh) 脚本中调用的,如下所示:

retcode=`$CLK_JAVA_PATH -cp $CLASSPATH test ${PASSWORD} ${HOSTNAME} ${TOOLSET}`

if [ $? != "0" ];then
echo "ERROR:
echo "${retcode}"
else
echo "${SCRIPT} Success"
fi

retcode 始终具有值“2”,与代码失败或成功无关。我的问题是,既然我的 main 方法的返回类型是“void”,为什么代码会返回一些值?

最佳答案

Java 应用程序的返回值不是它的 main 方法的返回值,因为 Java 应用程序不一定在它是 main< 时结束 方法已完成执行。

当没有更多的非守护线程在运行或System.exit() 时,JVM 会结束。被调用。

System.exit()也是唯一指定返回值的方式:传递给System.exit()的参数会作为返回值大多数操作系统上的 JVM 进程。

所以用这个结束你的 main() 方法:

System.exit(0);

将确保两件事:

  • main 结束时,您的 Java 应用程序真正退出,并且
  • JVM进程的返回值为0

关于java - 从 Java 代码返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6775802/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com