我想知道为什么在java中只有void返回类型为main方法.
public static void main(String [] args)
Run Code Online (Sandbox Code Playgroud)
除了main方法之外,为什么没有其他返回类型.
谢谢
Gre*_*ill 28
简短的回答是:因为这就是语言规范所说的.
在当今常用的操作系统(Windows和Unix系列)中,进程中唯一的"返回值"是退出状态,这是一个很小的数字(通常是8位).可以使用以下System.exit(int)方法从Java程序返回此值:
public static void exit(int status)终止当前运行的Java虚拟机.该参数用作状态代码; 按照惯例,非零状态代码表示异常终止.
Tom*_*ine 25
你期待什么回来?
在C中,您通常会返回int退出代码.但是,在多线程系统中,这没有多大意义.通常,Java程序将启动许多线程.主线程通常会或多或少立即返回.
System.exit 可用于退出特定的退出代码.
首先,因为没有任何东西可以返回值。主流操作系统(例如Windows、UNIX、Linux等)不允许命令“返回”值。(虽然可以说,退出代码是一个返回值,但它仅限于一个整数,并且有各种特定于操作系统的警告;例如,有多少位可以来自应用程序。)
其次,因为 Java 不允许重载仅返回类型不同的方法。
第三,正如@Tom指出的,如果exit code是 的返回值main,则很难处理调用 的其他线程System.exit(rc)。
| 归档时间: |
|
| 查看次数: |
33133 次 |
| 最近记录: |