1. 程式人生 > >C#~構造方法

C#~構造方法

前言

我們前期知道怎麼宣告一個類,而且也明白了在什麼情況下要宣告一個類。實際情況是這樣的,所有的類都有構造方法,如果你不編碼則系統預設生成孔的構造方法,若你有定義的構造方法,那麼預設的構造方法就會失效了,在後期的學習中,學習到了方法過載,這個表明了建構函式不只是一個,方法過載提供了建立同名的多個方法的能力,但這些方法需要使用不同的引數型別,注意並不是只有構造方法可以過載,其他方法也是可以的。

建構函式

定義

構造方法,又叫做建構函式,其實就是對類的初始化,構造方法必須與類同名,而且無返回值,不需要“void”在“new”時候呼叫。

無引數建構函式

最簡單的建構函式,是建立類的時候自帶的隱式函式如下:

<span style="font-family:KaiTi_GB2312;font-size:24px;"><strong>[訪問修飾符] <類名>()
{
    //建構函式的主體
}</strong></span>

這種建構函式的定義類似與一個方法的定義,但其區別是通常不顯式地呼叫建構函式,在建立類的一個例項時,建構函式就像一個方法一樣被呼叫。另外,這個呼叫的時候可以不適用顯式呼叫。所以無法訪問其返回值,即建構函式沒有返回值。可以在類定義中識別建構函式。因為建構函式總是和類同名。

帶引數的建構函式

如下例子:

<span style="font-family:KaiTi_GB2312;font-size:24px;">          <strong>class Cat  //宣告一個類;便於以後的例項化
            {
                private string name;//宣告Cat類中的私有字串變數name;
                public Cat (string name)//定義Cat類的構造方法,引數是輸入一個字串;帶引數的構造方法;
                {
                    this.name = name;//將引數賦值為私有變數;
                }
            
                public string Shout()//定義一個方法。
                {
                    return "我的名字叫"+name+"喵";
                }
            }</strong></span>

靜態建構函式

靜態建構函式用於初始化任何靜態資料,或用於執行僅需執行一次的特定操作。在建立第一個例項或引用任何靜態成員之前,將自動呼叫靜態建構函式。

如下例子:

<span style="font-family:KaiTi_GB2312;font-size:24px;"><strong>class SimpleClass  //靜態建構函式。
{
    //Static constructor
    static SimpleClass()
    {
        //...
    }

}</strong></span>

結語

   點點滴滴,見證成長。
感謝您的寶貴時間~~~