2015-04-02 118 views
0

我剛開始學習java,我有一個常規問題。如果我的代碼中有不同類中的多個主函數,哪個main函數會首先執行?我可以使用一個main()嗎?它應該放在哪一類?預先感謝您java代碼執行中的多個main()

+0

這將永遠是一個main()你選。 (只是一個小小的評論:Java中沒有函數,但方法)。根據你如何運行你的代碼(命令行,.jar,IDE),配置哪一個的方式是不同的,但它依然由你決定。電腦實際上並不是一個「聰明」的對象。它所能做的只是你(或其他人)告訴(並教導)他要做的事情。 – Stultuske 2015-04-02 11:22:29

+0

答案是 http://stackoverflow.com/questions/3759315/can-we-overload-the-main-method-in-java – 2015-04-02 11:24:28

+0

這不是重複 – Sarief 2017-06-06 14:35:53

回答

2

只有將執行的主要是您正在執行的類中的一個。通過在命令行中指定類java foo.bar.Class或在使用java -jar myjar.jar運行時在清單文件中指定的類。如果你有一個包含多個具有主要方法的類的jar,你可以用java -cp myjar.jar foo.bar.ClassName運行它們中的任何一個。

通過IDE運行取決於IDE。

+0

呃很酷。所以我可以有一個主要唯一的權利?謝謝 – Souraya 2015-04-02 11:29:49

+0

你可以有一個主電源或多個主電源。但每班最多一個。 – Kayaman 2015-04-02 11:31:49

0

Java只會調用傳遞給JVM的類的主要方法。如果要執行MyClass的Main()函數,則需要在已編譯的類文件的目錄中運行以下命令:java MyClass

您只需要在通過JVM傳遞的類中的主函數啓動班。

初始化類的對象實例不會調用Main()方法,也不會顯式調用該函數。

0

哪個主要首先執行?

主要與字符串數組參數main(String[] a)當你運行像java ClassName(JVM呼叫),如果你與其他類調用你可以調用任何main()取決於參數提供

注意:您可以重載主要功能但你不能有相同的名稱和參數的功能。

我可以使用一個main()嗎?它應該放在哪一類?

的main()是一種用於JVM到類的入口點,所以如果你的跑步類單獨像java ClassName其中JVM只需要main()所以需要爲每個類