擴(kuò)展方法

擴(kuò)展方法:

擴(kuò)展方法的類(lèi)必須聲明為static??

擴(kuò)展方法本身也必須聲明為static?

擴(kuò)展方法必須包含關(guān)鍵字this 作為它的第一個(gè)參數(shù)類(lèi)型,并在后面跟著它所擴(kuò)展的類(lèi)的名稱(chēng)


實(shí)例:

namespace ExtendMethodStudy

{

class Program

{

static void Main(string[] args)

{

MyData md = new MyData(1,2,3,4);

Console.WriteLine(" The Sum is {0}",md.sum());

Console.WriteLine(" The Average is {0}", md.average());

Console.ReadKey();

}

}

//計(jì)算和的類(lèi)

class MyData {

public double D1, D2, D3, D4;

public MyData(double d1,double d2,double d3,double d4){

D1 = d1; D2 = d2; D3 = d3; D4 = d4;

}

public double sum(){

return D1 + D2 + D3 + D4;

}

}

// 擴(kuò)展方法

//擴(kuò)展方法的類(lèi)必須聲明為static? ? 擴(kuò)展方法本身也必須聲明為static? 擴(kuò)展方法必須包含關(guān)鍵字this 作為它的第一個(gè)參數(shù)類(lèi)型,并在后面跟著它所擴(kuò)展的類(lèi)的名稱(chēng)

static class extendclass {

public static double average(this MyData my){

return my.sum() / 4;

}

}

}


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 對(duì)于iOS開(kāi)發(fā)者來(lái)說(shuō),使用擴(kuò)展方法是家常便飯。因?yàn)橛泻芏嗟念?lèi)是有系統(tǒng)框架的定義的,我們不能修改或者不想修改他們的源...
    dceac87d4213閱讀 535評(píng)論 4 2
  • 擴(kuò)展方法 所謂的擴(kuò)展方法,其實(shí)就是無(wú)需繼承就可以改寫(xiě)類(lèi),讓類(lèi)中增加方法。直接通過(guò)實(shí)例調(diào)用的靜態(tài)方法,因此即使實(shí)例是...
    LoveWaits_9b9a閱讀 360評(píng)論 0 0
  • 擴(kuò)展string的方法 這樣我們就可以直接使用: 注意:看到擴(kuò)展的方法前面為什么要添加前綴呢?考慮到多人開(kāi)發(fā)時(shí),難...
    透支未來(lái)閱讀 2,783評(píng)論 0 0
  • 1 簡(jiǎn)介: 擴(kuò)展方法使你能夠向現(xiàn)有類(lèi)型“添加”方法,而無(wú)需創(chuàng)建新的派生類(lèi)型、重新編譯或以其他方式修改原始類(lèi)型。 擴(kuò)...
    silence_k閱讀 351評(píng)論 2 3
  • 當(dāng)我們重復(fù)寫(xiě)一些繁雜的代碼,或C#的一些方法,我們就想能不能有更便捷的方法呢?當(dāng)然是有的,在unity中,我們對(duì)它...
    好怕怕閱讀 2,031評(píng)論 0 4

友情鏈接更多精彩內(nèi)容