asp.net网站制作视频教程,做室内设计特别好的网站,网站顶部公告代码,深圳专业制作网站哪个公司好Net C# 扩展方法扩展方法使您能够向现有类型“添加”方法#xff0c;而无需创建新的派生类型、重新编译或以其他方式修改原始类型。扩展方法是一种特殊的静态方法#xff0c;但可以像扩展类型上的实例方法一样进行调用。好处#xff1a;不修改原有类型的实现调用#xff1a…Net C# 扩展方法扩展方法使您能够向现有类型“添加”方法而无需创建新的派生类型、重新编译或以其他方式修改原始类型。扩展方法是一种特殊的静态方法但可以像扩展类型上的实例方法一样进行调用。好处不修改原有类型的实现调用调用以成员函数方式调用静态实现范例using System.Linq;using System.Text;using System;namespace CustomExtensions{ //Extension methods must be defined in a static class public static class StringExtension { // This is the extension method. // The first parameter takes the this modifier // and specifies the type for which the method is defined. public static int WordCount(this String str) { return str.Split(new char[] { , .,?}, StringSplitOptions.RemoveEmptyEntries).Length; } }}namespace Extension_Methods_Simple{ //Import the extension method namespace. using CustomExtensions; class Program { static void Main(string[] args) { string s The quick brown fox jumped over the lazy dog.; // Call the method as if it were an // instance method on the type. Note that the first // parameter is not specified by the calling code. int i s.WordCount(); System.Console.WriteLine(Word count of s is {0}, i); } }}上述代码实现的字统计你也可以采用继承的方式来实现public class StringExtension : String{ public int WordCount() { ...... }调用上这是两个不同的类别处理。看到这里如果学习Objective-C就知道Category这个东西就是用于扩展方法。看来C#这个语言从多类语言中吸取各自的优点混装了自己~至于Objective-C的Category这里不做介绍和比对转载于:https://www.cnblogs.com/GoGoagg/archive/2011/08/04/2127697.html