匿名方法、委托和Lambda表达式区分演示(图文解释)

来源:互联网 发布:数据库冗余设计 编辑:程序博客网 时间:2024/06/06 07:26

C# 在

 2.0 之前的 C# 版本中,声明委托的唯一方法是使用命名方法。

2.0 引入了匿名方法,

而在 C# 3.0 及更高版本中,Lambda 表达式取代了匿名方法,作为编写内联代码的首选方式。

为了区分它们3个咱们创建个演示程序。

1、首先新建一个.net3.0以上的Winfrom程序。

2、然后拖上来3个按钮,但不要双击按钮。


3、通过右键查看代码来到后台


4、写下以下代码,区分匿名方法、委托和Lambda表达式。

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace 匿名方法{    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();            button1.Click += new EventHandler(button1_Click);            button2.Click += delegate{ MessageBox.Show("匿名方法!"); };            button3.Click += (System.Object o, System.EventArgs e) =>            {                MessageBox.Show("Lambda!");            };                }        void button1_Click(object sender, EventArgs e)        {            MessageBox.Show("委托!");        }    }}