什么是擴(kuò)展方法?.NET中的擴(kuò)展方法是什么?編輯:我在使用擴(kuò)展方法時(shí)發(fā)布了一個(gè)跟進(jìn)問題
3 回答

MMMHUHU
TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個(gè)贊
擴(kuò)展方法 - 簡單解釋
假設(shè)我有一只狗。所有的狗 - 所有類型的狗的動(dòng)物 - 做某些事情:
吃
WagsTail
喊“Woof!”
搖爪等
狗可以做的事情都被稱為“方法”。
現(xiàn)在讓我們假設(shè)OO Heaven中的偉大程序員忘記為dog類添加一個(gè)方法:FetchNewspaper()。你希望能夠說:
rex.FetchNewspaper(); // orwolfie.FetchNewspaper(); // orbeethoven.FetchNewspaper();
......即使您無法訪問源代碼。
你是如何讓你的狗這樣做的?您唯一的解決方案是創(chuàng)建“擴(kuò)展方法”。
創(chuàng)建擴(kuò)展方法
(注意下面第一個(gè)參數(shù)前面的“this”關(guān)鍵字):
public static void FetchNewsPaper(this Dog familyDog){ Console.Writeline(“Goes to get newspaper!”)}
如果你想讓你的狗得到報(bào)紙,只需這樣做:
Dog freddie_the_family_dog = new Dog();freddie_the_family_dog.FetchNewspaper();
您可以在沒有源代碼的情況下將方法添加到類中。這非常方便!
- 3 回答
- 0 關(guān)注
- 636 瀏覽
添加回答
舉報(bào)
0/150
提交
取消