2011-04-08 40 views

回答

6

沒有什麼區別,它們是一樣的,VB.NET會忽略(),因爲沒有參數被傳入。

1

沒有一個。兩個版本都會調用Test類的無參數構造函數。第二個只有括號。

+1

這個答案大部分是正確的。但是我很不以爲然地認爲VB.NET *「一般」*不關心括號。這不是真的;大部分時間它確實關心。它只是不關心他們調用無參數的構造函數。 – 2011-04-08 14:36:41

+0

刪除了我答案的那部分內容。我之所以說通常是因爲您可以在沒有任何問題的情況下刪除任何無參數方法調用的括號。對於有參數的方法調用,你是對的,編譯器肯定很在意。感謝您指出了這一點。 – 2011-04-08 16:08:47

+1

實際上,您可以刪除任何對無參數構造函數的調用的括號,*或*對無參數屬性的任何調用。屬性以這種方式處理,因爲VB團隊希望他們的語法更像是一個字段,因爲這就是他們經常被調用的方式。你*確實需要使用圓括號來調用方法,即使它沒有使用任何參數。但是,如果您從一行中省略它們,IDE將自動添加它們。 – 2011-04-09 10:58:51

相關問題