扩展方法:
目的:对已存在的类型的行为进行扩展:
扩展方法是一种特殊的静态方法
扩展方法必须在静态类中定义
扩展方法的优先级低于同名的类方法
扩展方法只能在特定的命名空间中有效
排除必需不要滥用扩展方法
LinQ中的绝大数方法都是扩展方法
示例:
//静态类
目的:对已存在的类型的行为进行扩展:
public static class ClassA { //this keywords is a pointer,表示为string类型定义了一个扩展方法 public static void ExpandMethod(this string s) { //方法体 } }注意事项:
扩展方法是一种特殊的静态方法
扩展方法必须在静态类中定义
扩展方法的优先级低于同名的类方法
扩展方法只能在特定的命名空间中有效
排除必需不要滥用扩展方法
LinQ中的绝大数方法都是扩展方法
示例:
//静态类
public static class ExpandClss { //静态类中的拓展方法 public static string ExtraMethodToString(this string s) { return s.Substring(0, 1).ToUpper() + s.Substring(1); } //带参数的拓展方法 public static string ExtraMethodToString(this string s,int len) { return s.Substring(0, 1).ToUpper() + s.Substring(1,len); } } //使用静态类 private void button1_Click(object sender, EventArgs e) { string s = "abcdefgafateateaft"; //要求首字母大写,其它字母小写,使用拓展方法实现 Console.WriteLine(s.ExtraMethodToString()); //output result "Abcdefgafate" Console.WriteLine(s.ExtraMethodToString(4)); //output result "Abcd" }
发表评论
-
C# 实现将文件夹分卷压缩
2015-04-17 17:01 1254http://bbs.csdn.net/topics/3907 ... -
C#发送邮件
2015-04-17 15:58 703public class SendEmailHelper ... -
C# xml文件读取
2015-02-11 16:08 669看附件................ -
什么时候该用委托,为什么要用委托,委托有什么好处....
2015-01-29 16:56 824http://www.cnblogs.com/superpce ... -
C#中动态加载和卸载DLL
2015-01-26 14:02 1429在C++中加载和卸载DLL是一件很容易的事,LoadLibra ... -
转:c#常用的18种设计模式
2015-01-21 08:16 789http://blog.jobbole.com/78130/ -
C#委托的介绍(delegate、Action、Func、predicate)
2015-01-09 17:26 1150http://www.cnblogs.com/akwwl/p/ ... -
接口和抽象类有什么区别 .
2014-12-22 16:35 622接口和抽象类有什么区别 你选择使用接口和抽象类的依据是什么 ... -
C#一个简单写日志文件的类
2014-12-11 09:57 1116/// <summary> /// L ... -
Linq初级班 Linq to DataSet体验(单表、多表联合查询JOIN语法)
2014-12-10 14:34 371http://www.cnblogs.com/huangcon ... -
C#泛型详解
2014-11-29 11:31 489我们在编写程序时,经常遇到两个模块的功能非常相似,只是一个是处 ... -
线程同步与异步的区别
2014-11-26 09:12 889异步处理就是按照不同步的程序处理问题。异步处理与同步处理是对立 ... -
应用C#和SQLCLR编写SQL Server用户定义函数 .
2013-10-09 17:07 493http://blog.csdn.net/zhzuo/arti ... -
log4Net简介
2013-06-30 11:32 582使用log4Net可以将系统听日志保存到DB、日志文件、邮箱中 ... -
DataGridView历史记录的前进与后退操作
2013-06-23 11:13 1114此功能介绍:DataGridView频繁查询数据时,可以将每次 ... -
c# 对INI配置文件的读取操作
2013-06-17 10:51 680此种方法只对如下格式的INI文件起作用 server=loca ... -
对DataGridView控件的扩展开发
2013-06-15 21:47 2390首先在项目中引用 ... -
对集合控件(ListBox,ComboBox,TreeView,RichTextBox,DataGridView)的查找、替换操作控件
2013-06-15 09:39 1555一、程序入口: using System; using ... -
C#对文件、文件夹操作公用组件
2013-06-11 09:46 975namespace HR.Class.IO { / ... -
TreeView控件操作开发篇之(五)
2013-06-09 00:09 832#region 加载文件夹及文件到树 ...
相关推荐
C#扩展方法是C#语言中的一个独特特性,它允许我们向现有的类添加新方法,而无需修改原类的源代码。这在很多情况下非常有用,尤其是当我们想要增强已有的.NET框架类的功能时,比如字符串、集合或者DateTime等。下面...
在.NET框架中,Visual Studio 2008 (VS08)引入了一项重要的特性——扩展方法,这为开发者提供了一种优雅的方式来扩展已存在类型的功能,而不必修改原始的类定义。扩展方法使得静态类可以为非静态类添加方法,这种...
总结来说,PLC的I/O点扩展方法主要涉及硬件电路设计、软件编程和硬软件结合三个方面。对于实际工程应用中的I/O点不足,应根据具体需求和条件,灵活选择和组合这些方法,以实现高效、经济的控制系统设计。
开发日常使用帮助类扩展方法,仅供学习使用。。直接引用扩展使用
在C#编程语言中,扩展方法是一种特殊类型的方法定义,它可以被添加到现有的类型上,即使这个类型最初并未包含该方法。这种特性使得开发者能够为已存在的类库添加功能,而无需修改原始的源代码,这在处理第三方库或者...
在处理大量数据插入时,传统的逐条插入方式可能会导致性能低下,此时我们可以利用扩展方法来实现批量插入(BulkInsert),以提高数据插入效率。本文将详细讲解如何在EF中使用BulkInsert扩展方法,以及其背后的原理和...
在编程领域,扩展方法是一种非常实用的特性,它允许我们为已经存在的类型添加新的方法,而无需修改原始的源代码。这个"扩展方法Demo"很可能是一个示例项目,旨在演示如何在C#语言中使用扩展方法。报错信息“扩展方法...
在C#编程语言中,扩展方法是一种特殊类型的静态方法,它可以被附加到现有的类型上,使得我们可以像调用实例方法一样调用它们。这在处理数组时尤其有用,特别是当需要对数组中的元素进行批量数据类型转换时。本文将...
标题中的“低成本可编程控制器输入点扩展方法研究”揭示了这个主题主要关注的是在有限的预算下,如何通过创新手段来扩展可编程控制器(PLC)的输入点数量,以满足更复杂的工业控制需求。这通常涉及到硬件设计、软件...
C# 扩展方法是一种创新的编程特性,首次在C# 3.0中引入,旨在提供了一种向现有类型添加新方法而不必使用继承或封装的技术。这种方式有助于增强代码的可读性和灵活性,同时避免了过度使用继承导致的问题。 在面向...
下面将详细介绍几种常见的单片机串口扩展方法。 1. 软件模拟法 软件模拟串口是利用定时器和单片机的I/O口模拟串行通信的时序。这种方法灵活性高,成本低,但对单片机性能有一定要求。接收和发送过程中,通常需要...
【扩展方法示例代码】是针对C#编程语言中一种特殊的方法定义方式——扩展方法的实践展示。在C#中,扩展方法允许我们为已经存在的类型添加新的功能,而无需继承或修改原始类型。这种特性使得我们可以优雅地扩展类库,...
为了方便开发者对字符串进行各种操作,C#提供了一系列内置的方法,同时,通过扩展方法(Extension Methods),我们可以自定义更多的字符串处理功能。这篇文档汇总了C#中常用的字符串扩展方法,特别是针对数据类型的...
“Linq TO Sql 扩展方法”是指在.NET框架中,使用LINQ(Language Integrated Query)与SQL Server交互时,通过扩展方法来增强LINQ to SQL的功能。这种方法允许开发者在不修改原有类的基础上增加新的功能,使得查询...
.Net 3.0 添加了一个语法糖就是扩展方法,其实扩展方法的本质就是对类的静态方法的调用,虽然扩展方法只是改变了我们写代码的方式,但是如果我们使用得当,可以给我们带来巨大的编码效率的提升。对于C#扩展方法的...
在ASP.NET MVC框架中,扩展方法是一种非常实用的特性,它允许我们在不修改现有类的情况下为其添加新功能。本文将深入探讨如何在MVC中使用扩展方法,以及它在实际项目中的应用。我们将通过ASP.NET MVC5入门教程的第四...
以下将详细介绍几种常见的51单片机中断源扩展方法。 首先,最简单的方法是使用硬件请求结合软件查询的方式。这种方法的核心思想是通过硬件逻辑门电路,如“或非门”或“与门”,将多个外部中断源汇总到单片机的INT0...