ASP.NET方法如何重載需要必備哪些條件
更新時(shí)間:2013年12月11日 17:33:29 作者:
很多新手朋友們都不知道ASP.NET方法如何重載,下面為大家介紹下在設(shè)計(jì)重載方法的時(shí)候應(yīng)該注意一下事項(xiàng),感興趣的朋友不要錯(cuò)過(guò)
決定方法是否構(gòu)成重載有以下幾個(gè)條件:
◆ 在同一個(gè)類(lèi)中;
◆ 方法名相同;
◆ 參數(shù)列表不同。
在設(shè)計(jì)重載方法的時(shí)候應(yīng)該注意一下事項(xiàng)
1 避免隨意更改重載中的參數(shù)名稱(chēng)。如果某個(gè)重載的一個(gè)參數(shù)與另一個(gè)重載的一個(gè)參數(shù)表示相同的輸入,則這兩個(gè)參數(shù)應(yīng)具有同樣的名稱(chēng)。
例如,不要執(zhí)行下面的操作:
public void Write(string message, FileStream stream){}
public void Write(string line, FileStream file,bool closeStream){}
這些重載的正確定義如下所示
public void Write(string message, FileStream stream){}
public void Write(string message, FileStream stream,bool closeStream){}
保持重載成員參數(shù)的順序一致性。在所有重載中,同名參數(shù)的位置應(yīng)該相同。
例如,不要執(zhí)行下面的操作:
public void Write(string message, FileStream stream){}
public void Write(FileStream stream, string message, bool closeStream){}
這些重載的正確定義如下所示:
public void Write(string message, FileStream stream){}
public void Write(string message, FileStream stream,bool closeStream){}
以上兩種寫(xiě)法結(jié)構(gòu)清晰,增強(qiáng)代碼的可讀性,更加適合規(guī)范。
此準(zhǔn)則有兩項(xiàng)約束:
如果重載采用變量參數(shù)列表,則該列表必須是最后一個(gè)參數(shù)。
如果重載采用 out 參數(shù),按照約定,這類(lèi)參數(shù)應(yīng)作為最后的參數(shù)
如果需要具有擴(kuò)展性,將最長(zhǎng)的重載作為虛重載。較短的重載只應(yīng)逐步調(diào)用較長(zhǎng)的重載。
與override重寫(xiě)的區(qū)別
Override是指父類(lèi)和子類(lèi)之間方法的繼承關(guān)系,這些方法有著相同的名稱(chēng)和參數(shù)類(lèi)型。
◆ 在同一個(gè)類(lèi)中;
◆ 方法名相同;
◆ 參數(shù)列表不同。
在設(shè)計(jì)重載方法的時(shí)候應(yīng)該注意一下事項(xiàng)
1 避免隨意更改重載中的參數(shù)名稱(chēng)。如果某個(gè)重載的一個(gè)參數(shù)與另一個(gè)重載的一個(gè)參數(shù)表示相同的輸入,則這兩個(gè)參數(shù)應(yīng)具有同樣的名稱(chēng)。
例如,不要執(zhí)行下面的操作:
復(fù)制代碼 代碼如下:
public void Write(string message, FileStream stream){}
public void Write(string line, FileStream file,bool closeStream){}
這些重載的正確定義如下所示
復(fù)制代碼 代碼如下:
public void Write(string message, FileStream stream){}
public void Write(string message, FileStream stream,bool closeStream){}
保持重載成員參數(shù)的順序一致性。在所有重載中,同名參數(shù)的位置應(yīng)該相同。
例如,不要執(zhí)行下面的操作:
復(fù)制代碼 代碼如下:
public void Write(string message, FileStream stream){}
public void Write(FileStream stream, string message, bool closeStream){}
這些重載的正確定義如下所示:
復(fù)制代碼 代碼如下:
public void Write(string message, FileStream stream){}
public void Write(string message, FileStream stream,bool closeStream){}
以上兩種寫(xiě)法結(jié)構(gòu)清晰,增強(qiáng)代碼的可讀性,更加適合規(guī)范。
此準(zhǔn)則有兩項(xiàng)約束:
如果重載采用變量參數(shù)列表,則該列表必須是最后一個(gè)參數(shù)。
如果重載采用 out 參數(shù),按照約定,這類(lèi)參數(shù)應(yīng)作為最后的參數(shù)
如果需要具有擴(kuò)展性,將最長(zhǎng)的重載作為虛重載。較短的重載只應(yīng)逐步調(diào)用較長(zhǎng)的重載。
與override重寫(xiě)的區(qū)別
Override是指父類(lèi)和子類(lèi)之間方法的繼承關(guān)系,這些方法有著相同的名稱(chēng)和參數(shù)類(lèi)型。
您可能感興趣的文章:
相關(guān)文章
asp.net(c#)實(shí)現(xiàn)從sqlserver存取二進(jìn)制圖片的代碼
有一個(gè)員工表Employee,需要保存員工照片(Photo)到數(shù)據(jù)庫(kù)(sql server)上。員工照片對(duì)應(yīng)的字段是varbinary(max),也就是要存成二進(jìn)制文件類(lèi)型(這和以前討巧地存圖片文件路徑就不相同了),默認(rèn)可以為空。2011-09-09
asp.net中GridView和DataGrid相同列合并實(shí)現(xiàn)代碼
asp.net中GridView和DataGrid相同列合并實(shí)現(xiàn)代碼,需要的朋友可以參考下2012-10-10
ASP.NET與ASP互通COOKIES的一點(diǎn)經(jīng)驗(yàn)
ASP與ASP.NET互相整合時(shí),其中文COOKIES信息無(wú)法被互通共享,當(dāng)使用ASP.NET寫(xiě)入中文COOKIES信息后,使用ASP進(jìn)行讀取,讀出來(lái)的卻是亂碼,而非中文。2010-03-03
DataGridView展開(kāi)與收縮功能實(shí)現(xiàn)
我們今天將要講到DataGridView之行的展開(kāi)與收縮,包括功能是如何實(shí)現(xiàn)的,感興趣的小伙伴們可以參考一下2015-09-09
silverlight用webclient大文件上傳的實(shí)例代碼
這篇文章介紹了silverlight用webclient大文件上傳的實(shí)例代碼,有需要的朋友可以參考一下2013-10-10

