擴(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;
}
}
}
