C# 扩展方法
Posted halfsaltedfish
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 扩展方法相关的知识,希望对你有一定的参考价值。
什么是扩展方法
扩展方法使你能够向现有类型“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改原始类型。 扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用。 对于用 C#、F# 和 Visual Basic 编写的客户端代码,调用扩展方法与调用在类型中实际定义的方法没有明显区别。
如何定义
1.定义一个静态类以包含扩展方法。该类必须对客户端代码可见。
2.将该扩展方法实现为静态方法,并使其至少具有与包含类相同的可见性。
3.该方法的第一个参数指定方法所操作的类型;该参数必须以 this 修饰符开头。
4.在调用代码中,添加一条 using 指令以指定包含扩展方法类的命名空间。
5.按照与调用类型上的实例方法一样的方式调用扩展方法。
示例
给String类定义一个扩展方法
public static class MehtondExtension
public static string tostring(this string s)
return (string.Format("Extension output: 0", s));
注意可见修饰、static和传入参数中的this。
在Main函数中进行调用:
class Program
static void Main(string[] args)
string s = "Hello World";
Console.WriteLine(s.ExToString());
Console.ReadKey();
输出 :Extension output: Hello World
以上是关于C# 扩展方法的主要内容,如果未能解决你的问题,请参考以下文章