1. 概述 本章讲解如何使用 委托、lambda表达式 和 匿名方法 来创建和使用事件。2. 主要内容 2.1 理解委托 委托是一种用方法签名形式定义的类型。可以让它指向其他方法,可以通过它调用其他方法。 ① 委托支持多播(multicasting),可以用 + 和 += 操作符绑定...
分类:
Web程序 时间:
2015-03-19 20:05:42
阅读次数:
205
JAVA8 的函数引用和?lambda表达式的关系=>函数引用是一种简化的?lambda表达式,只给出现有的函数,参数和返回值编译器推断去吧. 其实这语法和?lambda表达式正好相反,?lambda表达式表示匿名方法,就是没...
分类:
编程语言 时间:
2015-03-17 02:21:06
阅读次数:
151
匿名方法 匿名方法顾名思义,是没有名字的方法,但是仍有方法体,仍能干活。在很多地方可能你都见过它,比如js中,用的最多! 看看Msdn给的说法:在 2.0 之前的 C# 版本中,声明委托的唯一方法是使用命名方法。 C# 2.0 引入了匿名方法,而在 C# 3.0 及更高版本中,Lambda ...
分类:
其他好文 时间:
2015-03-10 11:51:15
阅读次数:
126
一、委托:完成一个委托应分三个步骤://step01:首先用delegate定义一个委托;public delegate int CalculatorAdd(int x, int y);//step02:声明一个方法来对应委托.public int Add(int x, int y){return ...
分类:
其他好文 时间:
2015-03-04 18:55:07
阅读次数:
143
在C# 2.0中,通过方法组转换和匿名方法,使委托的实现得到了极大的简化。但是,匿名方法仍然有些臃肿,而且当代码中充满了匿名方法的时候,可读性可能就会受到影响。C# 3.0中出现的Lambda表达式在不牺牲可读性的前提下,进一步简化了委托。LINQ的基本功能就是创建操作管道,以及这些操作需要的任何状...
分类:
其他好文 时间:
2015-02-27 22:52:04
阅读次数:
231
在C# 3.0中,几乎每个新特性都是为LINQ服务的。所以,本文将介绍下面几个在C# 3.0中引入的新特性:自动实现的属性隐式类型的局部变量对象和集合初始化程序隐式类型的数组匿名类型其实这几个特性都是比较容易理解的,对于这几个特性,编译器帮我们做了更多的事情(想想匿名方法和迭代器块),从而简化我们的...
分类:
其他好文 时间:
2015-02-26 23:00:11
阅读次数:
287
前面一篇文章看到了C# 2.0中通过匿名方法来简化委托,下面来看看匿名方法中的变量。闭包和不同的变量类型闭包的基本概念是:一个函数除了能够通过提供给它的参数与环境交互之外,还能同环境进行更大程度的互动。对于C# 2.0中出现的匿名方法的闭包表现为,匿名方法能使用在声明该匿名方法的方法内部定义的局部变...
分类:
其他好文 时间:
2015-02-23 16:39:02
阅读次数:
180
前面的文章介绍过,C# 1.0中出现委托这个核心概念,在C# 2.0中,委托得到了很大的改进。C# 2.0中委托的改进为C# 3.0中的新特性提供了铺垫,当我们了解了匿名方法后,Lambda的学习就会变得相对容易。下面就看看C# 2.0中委托的改进。方法组转换在C# 1.0中,如果要创建一个委托实例...
分类:
其他好文 时间:
2015-02-17 23:31:37
阅读次数:
234
var, object, dynamic的区别以及使用dynamic(2) – ExpandoObject的使用.NET中的Lambda表达式与匿名方法
分类:
其他好文 时间:
2015-02-12 18:10:19
阅读次数:
114
大家好上周写了匿名方法一文,很多读者,很高兴,相信我们已经从大伙的回复中,对.NET又有了更深刻的认识.好,现在说主题,各类数据库都有相应更新本表top n的方案.现在我一一举例首先看表结构如下:数据库以及表创建命令初始化数据库语句1 CREATE TABLE student(2 id varcha...
分类:
数据库 时间:
2015-02-11 10:41:58
阅读次数:
200