2012-07-17 117 views
3

可能重复:
Who calls the main function in java?main()中的返回返回到哪里?

考虑以下代码:

class abc { 
    public static void main(String x[]) { 
    return; 
    } 
} 

哪里去控制当到达return什么?当我们执行这个程序,通过

$ java abc 

说为main方法编译器的搜索,然后进一步进行。在其他情况下,我们调用一个函数,如果我们达到return,则控制返回到最后一个调用点。

+5

它结束主线程。 – 2012-07-17 13:20:42

+2

像往常一样,控制去哪里它来自:) – dasblinkenlight 2012-07-17 13:21:23

+5

这不应该被拒绝。这是关于java中控制流的有效问题。 – mfrankli 2012-07-17 13:23:18

回答

7

该控件总是返回给呼叫始发者。在这种情况下,发起者可以是操作环境或另一种称为main的方法(请记住,当涉及到被叫时,main并不是特殊的,其他方法也可以调用它)。

+0

+1对于“主要不是什么特别的方式”......记得我当一些代码“打电话给主要人员”时学生感到惊讶:-) – jalopaba 2012-07-17 13:25:56

+0

我有一个非凡的2moro,所有这些愚蠢的问题都源于我的头脑。如果我的老师问我,主线程结束是什么意思..或者我应该回答“程序在主控方法出来后结束” – Nil 2012-07-17 13:26:48

+3

@ rd4code:程序可能不会结束 - 您可能有其他前景线程执行。仅仅因为“主”完成并不意味着JVM死亡。 – 2012-07-17 13:28:31