溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C# 方法簽名以及怎樣的兩個方法才算是不同的方法

發布時間:2020-04-07 15:31:47 來源:網絡 閱讀:1581 作者:海灬未眠 欄目:編程語言


方法簽名由方法名稱和一個參數列表(方法的參數個數、順序和類型)組成。

注意:方法的簽名并不包括方法的返回值和修飾符。


在C#中,同一個類中的兩個或兩個以上的方法可以相同的名字,只要他們的參數列表聲明不同即可。在這種情況下,該方法就被稱為重載(overload),這個過程稱為方法重載(method overloading)。方法重載是C#最有用的特性之一。


當一個方法被調用時,C#用方法簽名確定調用哪一個方法。因此,每個重載方法的參數列表必須是不同的。雖然每個重載方法可以有不同的返回類型,但是返回值類型并不足以區分所條用的是哪個方法。當C#調用一個重載方法時,參數與調用參數相匹配的那個方法會被執行。


 ①     public static int Min(int a,string b)
        {
            return 1;
        }

 ②     public static string Min(int a, string b) //錯誤提示:已經定義了一個名為Min的具有相同類型參數的成員
        {
            return "1";
        }

 ③     public static void Min(int a, string b) //錯誤提示:已經定義了一個名為Min的具有相同類型參數的成員
        {

        }

 ④     private static int Min(int a, string b) //錯誤提示:已經定義了一個名為Min的具有相同類型參數的成員
        {
            return 1;
        }

 ⑤     public int Min(int a, string b) //錯誤提示:已經定義了一個名為Min的具有相同類型參數的成員
        {
            return 1;
        }

 ⑥     public static int Abc(int a,string b) //方法名稱不同
        {
            return 1;
        }

 ⑦     public static int Min(int a, string b ,int c) //參數列表不同
        {
            return 1;
        }

 ⑧     public static int Min(string a, int b)
        {
            return 1;
        }

 ⑨     public static int Min(string a, char b)
        {
            return 1;
        }

①與⑥、⑦、⑧、⑨對比,我們發現他們是不同的方法; ①與②、③、④、⑤對比,我們發現他們是相同的方法。這就說明,只有兩個方法的方法簽名不同,才是說他們是不同的方法。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女