c# 高级应用 理解扩展方法

扩展方法的特征

1、它必须在一个非嵌套的,非泛型的静态类中
2、它至少有一个参数
3、第一个参数必须加上this关键字作为前缀
4、第一个参数不能有任何其他的修饰符(比如out或ref)
5、第一个参数的类型不能是指针类型

For Example

public Class Person
{
   public void ShowName(string name)
   {
       Console.WriteLine(name);
   }
}
//扩展方法的创建
public Static Class ExtendPerson
{
   public Static void ShowAge(this Person person,int age)
   {
       Console.WriteLine(age);
   }
}

//扩展方法的使用
Person person = new Person();
person.ShowAge(10);
复制代码

.Net3.5中的扩展方法

扩展方法你能一种自然的方式将静态方法调用链接到一起,主要体现在Queryable,Enumerable中。
For Example

var collection Enumerable.Range(0,9)
                         .Where(x => x % 2 == 0)
                         .Reverse();
foreach(var element in collection)
{
   Console.WriteLine(element);
}
复制代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值