簡體   English   中英

正確的main方法語法

[英]Correct syntax for main method

這是一個初學者問題。 我是java新手,一直在瀏覽StackOverflow和CodeReview。 我發現使用了這兩種不同的格式:

例1

public static void main(String args[])

要么
例2

public static void main(String[] args)

這就是我在課程筆記中的內容:

這些詞被稱為修飾語。 main()方法前面還有單詞void,表示它不返回任何值。 main()方法總是有一個可以傳遞給程序的命令行參數列表

main(String [] args)

我們現在要忽略它。

所以,正如你所看到的,我們現在被告知要忽略它,但我想知道:

這些之間是否存在實際差異,如果是,那么什么?

Java語言規范

[]可以作為聲明開頭的類型的一部分出現,也可以作為特定變量的聲明者的一部分出現,或者兩者兼而有之。

例如:

 byte[] rowvector, colvector, matrix[]; 

該聲明相當於:

 byte rowvector[], colvector[], matrix[][]; 

實際上,兩種main-method定義之間沒有區別,兩者都是正確的。

但按照慣例,java首選數組聲明為String[] args而不是String args[]

所以它更傳統 -

public static void main(String[] args){...}

main方法接受以下方式接受的String數組中的爭論

public static void main(String args[])
public static void main(String []args)
public static void main(String... args)

所有這些都是Java中main函數的有效聲明。

public static void main(String[] args) {
    // code
}

static public void main(String[] args) {
    // code
}

static public void main(String args[]) {
    // code
}

public static void main(String[] MarkElliotZuckerberg) {
    // code
}

public static void main(String... NewYork) {
    // code
}
  • 關鍵字public和static是可互換的但必須的。
  • main方法的參數可以采用var-args語法。
  • 這個名字可以是任何東西..!

這些是無效的主要方法聲明的示例 -

static void main(String[] args) {
    // public is missing
}

public void main(String args[]) {
    // static is missing
}

public static int main(String... Java) {
    // return type not void

    return 0;
}

public void Main(String args[]) {
    // "main" not "Main"
}

public void main(string args[]) {
    // "String" not "string"
}

public void main(String.. SayHi) {
    // Ellipses is 3 dots !
}

如果源代碼不太可讀,我很抱歉......我總是在發布源代碼時遇到麻煩...:P ...希望這有助於......! 如果有,請通過評論告訴我..!

源程序 - Java程序設計理論教程

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM