扩展方法(Extension Method)
扩展方法的定义:
定义一个static类,以及若干static method。方法的第一个参数使用了this关键字作修饰符。用来指定被扩展的类型。被扩展的类型的实例可以调用此方法。visual studio的智能感知会用下箭头标识此方法为扩展方法而不是类型的原生定义方法。
static class MyExtension
{
public static void DisplayTypeInfo(this object obj)
{
Console.WriteLine("GetType() = {0}", obj.GetType());
}
}
class Program
{
static void Main()
{
int i = 100;
i.DisplayTypeInfo();
MyExtension.DisplayTypeInfo(i); //也可以直接调用扩展类的静态方法
Console.ReadLine();
}
}