Extension method for type

擴展其實真的很簡單this

msdn是這樣規定擴展方法的:「擴展方法被定義爲靜態方法,但它們是經過實例方法語法進行調用的。 它們的第一個參數指定該方法做用於哪一個類型,而且該參數以 this 修飾符爲前綴。orm

擴展方法的關鍵不在於定義所在的class的名字,關鍵在於擴展方法的第一個參數,以及全部class和擴展方法是否爲static。blog

image

擴展方法的第一個參數指定這個擴展方法做用在的class。作用域

好比個人例子中爲string添加一個擴展方法 (ToIntExt), 因此第一個方法必須是string類型,而且要加上this修飾符爲前綴。get

完成了這些工做,你在StringExtension的做用域裏任何string類型的實例均可以訪問這個擴展方法(如上圖)。string

 

擴展方法還能夠添加參數,想要實現只需在第一個參數(this前綴)後面繼續添加你須要的參數。以下,我想給個人ToIntExt擴展方法加一個format:it

image

相關文章
相關標籤/搜索