詳述:使用多載建立相同方法的多重版本
更新:2007 年 11 月
在本課程中,您將學習如何加入方法的多重版本至類別中。
在上一個課程中,您學會如何加入方法至 Persons 類別。但有時候會發生單一方法無法處理的狀況。例如,在不同的狀況下,您可能需要傳遞不同的資料型別至不同的方法,或是您想要傳回不同的格式做為結果。
您可以使用稱為「多載」的技巧,建立方法的多重版本。當某個類別有多個名稱相同但引數集不同的方法時,此方法就是多載。
多載化
若要建立多載方法,請加入兩個以上的 Sub 或 Function 程序至類別中,且每一個程序的名稱都要相同。在程序宣告中,各程序的引數集都必須不同,否則就會發生錯誤。
下列程式碼顯示具有兩個多載的方法,一個帶有 String 引數,另外一個則以 Integer 做為引數。
Public Sub TestFunction(ByVal input As String)
MsgBox(input)
End Sub
Public Sub TestFunction(ByVal input As Integer)
MsgBox(CStr(input))
End Sub
如果您要從程式碼呼叫這個方法,並傳遞字串,就會執行第一個多載,而且訊息方塊會顯示字串。如果您傳遞數字,就會執行第二個多載,然後將數字轉換成字串,再顯示於訊息方塊中。
您可以任意建立所需要的多載,而每一個多載都可以包含不同數目的引數。
在 Persons 類別中,您將加入有兩個多載的方法,以傳回一個人的中間名縮寫:一個只附有縮寫,另外一個則附縮寫加句號。
試試看!
若要建立多載方法
開啟您在上一個課程中所建立的 Persons 專案。如果您並未儲存,請回到上一個課程:將方法加入類別,並完成該程序。
在 [方案總管] 中,選取 [Persons.vb],然後在 [檢視] 功能表中選擇 [程式碼]。
將以下程式碼加入至現有方法中。
Public Function MiddleInitial() As String MiddleInitial = Left$(middleNameValue, 1) End Function Public Function MiddleInitial(ByVal period As Boolean) As String MiddleInitial = Left$(middleNameValue, 1) & "." End Function
在 [檔案] 功能表上,選擇 [全部儲存],儲存您的工作。
後續步驟
在本課程中,您學會如何建立多載方法。在下一個課程中,您將學習如何將事件加入至類別。
下一個課程:將事件加入類別