一般情况下可以通过继承的方式扩展一个类产生特有的方法,这是在有类的源代码的前提下。如果没有源代码呢?
扩展方法是静态方法,是类的一部分,但实际上没有放在类的源码中。
假设有类MyClass需要一个方法Sum(int a,int b),需要创建一个静态类,把方法Sum()添加为一个静态方法。
public static class MyClassExtendsion { public static int Sum(this MyClass class,int a,int b) { return a+b; } }
第一个参数为扩展的类型,this开头,指明这个方法是MyClass的一部分。
即使扩展方法是静态的,使用时仍然使用MyClass的实例调用。
假如myClass是MyClass类型的实例,就可以用myClass.Sum(1,2);调用。
C#扩展类的另一种方式:扩展方法
最新推荐文章于 2023-07-08 22:12:35 发布