2012-09-02 65 views

回答

2

我們聲明,main方法在Java爲:公共靜態無效主要(字符串ARGS [])

靜:主要是一類的入口點。在java中,所有東西都寫在一個類中。現在,當你在命令提示符下運行java時,loader將加載該類,並且jvm將搜索主要方法以進入該類。所以使main()成爲靜態的,將使jvm直接訪問它而不創建實例。

如果主方法沒有被聲明爲靜態的,那麼JVM必須創建主類的實例,並且因爲構造函數可以被重載並且可以有參數,所以JVM無法在Java中找到主方法。

0

請記住,java中的所有內容都是一個類,爲了讓JVM直接訪問主方法而不創建它所包含的對象,它必須是靜態的。

static:main是一個類的入口點。在java中,所有東西都是在一個類中編寫的。現在,當您在命令提示符下運行java文件名時,loader將加載該類,並且jvm將搜索主要方法以進入該類。這樣做的主要()爲靜態,將使直接(JVM訪問它通過classname.main)

Reference here

這也是這個問題一個很好的資源,located here

+0

由於主要方法是靜態JVM可以調用它而不創建任何包含main方法的類的實例。如果main方法沒有被聲明爲靜態的,那麼JVM必須創建主類的實例,並且因爲構造函數可以被重載並且可以有參數,所以JVM在Java中找不到主方法。 – Zealous

+0

答案中大多指出了這一點。哪些是3歲。 – Serdalis

0

據我有限的Java知識,main()是靜態的,因爲當Java應用程序啓動時,它不會創建任何類實例。需要有一個函數可以在不創建實例的情況下被調用,這正是靜態關鍵字的作用。

相關問題