.NET 的 擴充方法 (C#/VB.NET)
https://docs.microsoft.com/zh-tw/dotnet/visual-basic/programming-guide/language-features/procedures/extension-methods
https://docs.microsoft.com/zh-tw/dotnet/csharp/programming-guide/classes-and-structs/extension-methods
不用繼承,也不用改變原始程式的情況下,替類別新增新的方法。
## VB .NET
要 Imports System.Runtime.CompilerServices 。
要在 Module 宣告。若要給 dll 外部使用,Module 要宣告 Public。
要擴充的方法上面要加上 <Extension()>,該方法或函式的第一個參數就是要擴充的型別。
可擴充的型別有:
類別 (參考類型)
結構 (實值類型)
介面
委派
ByRef 和 ByVal 引數
泛型方法的參數
陣列
## C#
要定義在 static 物件中的 static 方法。
方法的第一個參數要加上 this 型別。
擴充方法是定義成靜態方法,但透過執行個體方法語法呼叫。
沒有留言:
張貼留言