2014-09-28 91 views
0

在C#主類中爲什麼不是靜態的? 這兩個工作正常。C#主要靜態類

namespace CS_Console 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 

     } 
    } 
} 

namespace CS_Console 
{ 
    static class Program 
    { 
     static void Main(string[] args) 
     { 

     } 
    } 
} 

這兩個有什麼區別?

+3

閱讀此文章http://msdn.microsoft.com/en-us/library/79b3xss3.aspx – Shadow 2014-09-28 08:52:45

回答

4

因爲你可能會選擇其他成員添加到不需要是靜態的所需程序類。在Main方法中,你可以創建一個Program類的實例並像其他任何類一樣對待它。

2

靜態類與非靜態類基本相同,但有一點不同:靜態類無法實例化。因此,上面提到的代碼示例都可以工作。
有關詳細信息,Click Here

1

它遵循C#的傳統編碼準則。只包含靜態方法的類應聲明爲靜態。由於Main必須是靜態的,因此最好將您的類聲明爲靜態。

Program可以聲明爲非靜態,但正如您可能已經知道的那樣,static Main必須保持靜態,因爲它是入口點。 Program的責任是爲您的應用程序提供一個切入點,僅此而已。所有它需要做的是包含一個static方法稱爲MainMain總是宣佈爲static,沒有理由爲什麼Program不應該太。

更多信息可查詢here