方法簽名由方法名稱和一個(gè)參數(shù)列表(方法的參數(shù)個(gè)數(shù)、順序和類型)組成。
我們提供的服務(wù)有:做網(wǎng)站、網(wǎng)站建設(shè)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、迭部ssl等。為上千企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的迭部網(wǎng)站制作公司注意:方法的簽名并不包括方法的返回值和修飾符。
在C#中,同一個(gè)類中的兩個(gè)或兩個(gè)以上的方法可以相同的名字,只要他們的參數(shù)列表聲明不同即可。在這種情況下,該方法就被稱為重載(overload),這個(gè)過(guò)程稱為方法重載(method overloading)。方法重載是C#最有用的特性之一。
當(dāng)一個(gè)方法被調(diào)用時(shí),C#用方法簽名確定調(diào)用哪一個(gè)方法。因此,每個(gè)重載方法的參數(shù)列表必須是不同的。雖然每個(gè)重載方法可以有不同的返回類型,但是返回值類型并不足以區(qū)分所條用的是哪個(gè)方法。當(dāng)C#調(diào)用一個(gè)重載方法時(shí),參數(shù)與調(diào)用參數(shù)相匹配的那個(gè)方法會(huì)被執(zhí)行。
① public static int Min(int a,string b) { return 1; } ② public static string Min(int a, string b) //錯(cuò)誤提示:已經(jīng)定義了一個(gè)名為Min的具有相同類型參數(shù)的成員 { return "1"; } ③ public static void Min(int a, string b) //錯(cuò)誤提示:已經(jīng)定義了一個(gè)名為Min的具有相同類型參數(shù)的成員 { } ④ private static int Min(int a, string b) //錯(cuò)誤提示:已經(jīng)定義了一個(gè)名為Min的具有相同類型參數(shù)的成員 { return 1; } ⑤ public int Min(int a, string b) //錯(cuò)誤提示:已經(jīng)定義了一個(gè)名為Min的具有相同類型參數(shù)的成員 { return 1; } ⑥ public static int Abc(int a,string b) //方法名稱不同 { return 1; } ⑦ public static int Min(int a, string b ,int c) //參數(shù)列表不同 { return 1; } ⑧ public static int Min(string a, int b) { return 1; } ⑨ public static int Min(string a, char b) { return 1; }
①與⑥、⑦、⑧、⑨對(duì)比,我們發(fā)現(xiàn)他們是不同的方法; ①與②、③、④、⑤對(duì)比,我們發(fā)現(xiàn)他們是相同的方法。這就說(shuō)明,只有兩個(gè)方法的方法簽名不同,才是說(shuō)他們是不同的方法。
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國(guó)云服務(wù)器,動(dòng)態(tài)BGP最優(yōu)骨干路由自動(dòng)選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動(dòng)現(xiàn)已開啟,新人活動(dòng)云服務(wù)器買多久送多久。