C#一个关于委托和事件通俗易懂的例子

 1 using System;
 2 
 3 namespace Test
 4 {
 5     public class 室友
 6     {
 7         public delegate void 这是一个委托();
 8 
 9         public void 起床晨跑去()
10         {
11             Console.WriteLine("室友:喂,起床啦!");
12             if (叫别人起床该干嘛干嘛 != null) //如果有人委托我什么
13             {
14                 叫别人起床该干嘛干嘛();
15             }
16             Console.WriteLine("室友:完事走人,晨跑去!");
17         }
18 
19         public event 这是一个委托 叫别人起床该干嘛干嘛;
20     }
21 
22     public class 要晨读的我
23     {
24         public void 起床晨读()
25         {
26             Console.WriteLine("我:哦,起来了!!!");
27             Console.WriteLine("我:一二三四五,上网看知乎,刷完知乎再晨读!");
28         }
29     }
30 
31     public class 王八犊子
32     {
33         public void 赌五毛起不来()
34         {
35             Console.WriteLine("王八犊子:五毛拿走,劳资要碎觉!");
36         }
37     }
38 
39     class Program
40     {
41         static void Main(string[] args)
42         {
43 
44             var 中国好室友 = new 室友();
45             var 我 = new 要晨读的我();
46             var 王八犊子 = new 王八犊子();
47 
48             //我先告诉室友:我要早起晨读
49             中国好室友.叫别人起床该干嘛干嘛 += 我.起床晨读;
50             //王八犊子来搅屎了
51             中国好室友.叫别人起床该干嘛干嘛 += 王八犊子.赌五毛起不来;
52             //于是第二天到了
53             Console.WriteLine("闹铃:早上七点钟...");
54             Console.WriteLine("系统提示:室友起床了!");
55             中国好室友.起床晨跑去();
56         }
57     }
58 }

 

转载于:https://www.cnblogs.com/AaronBlogs/p/6828159.html

C#委托事件的区别 事件就是委托属性啊,有个addremove以及一个私有委托 很多人说:“总是感觉委托事件没什么区别,调用事件不就是相当于调用多个委托么?” 不全对,事件之于委托,就相当于,集合的属性之于集合的元素,注意:事件封装了一层,事件其实就是一个特殊的多播委托 class Program { public delegate void SendHandler(string str); public e... 阅读详情

相关推荐

分分钟用上C#中的委托事件

一个初学C#的程序猿,在刚刚碰到委托事件的概念时,估计都是望而却步,茫然摸不到头脑的。百度一搜,关于概念介绍的文章大把大把的,当然也不乏深入浅出的好文章。可看完这些文章,大多数新手,估计也只是信心满满的觉得自己看懂了,一旦要在自己的程序中用上委托事件,就傻眼了,根本不知道什么情况下该用,也不知道具体怎么用。 本文没有任何概念介绍,旨在帮助同学们快速用上委托事件,进入C#的更高境界。 ...

weixin_30684743的博客 2398

C#委托事件应用实例通俗易懂

网上看到一个童鞋用鸿门宴举了个C#委托事件的应用实例,很有意思,就对其进行了扩展,使例子更形象易懂。

C#编写的委托事件的十个精典的例子(可以直接运行)

C#编写的委托事件的十个精典的例子(可以直接运行)C#编写的委托事件的十个精典的例子(可以直接运行)C#编写的委托事件的十个精典的例子(可以直接运行)

C#委托事件的使用实例

使用委托时要先实例化,类一样,使用new关键字产生委托的新实例,然后将一个或者多个委托签名匹配的方法委托实例关联。随后调用委托时,就会调用所有委托实例关联的方法。 委托关联可以是任何类或者结构中的方法,可以是静态方法,只要是可以访问的方法都可以。 1.创建一个委托类型使用关键字delegate(委托) public delegate void DelegateChangeStart(string str);//创建一个实例 public class Program { #region 定义

chinaherolts2008的博客 1052

C#委托事件

关于委托事件分享三个博客内容: 首先说明下: (1)C#事件事件时属于类的成员,所以要放在类的内部。 (2)委托属于一个定义,是类、接口类似的,通常放在外部。 (因为大多数委托都要被重用) 委托定义在类里面还是类外面视情况而定,一般定义在类定义平级部分, 且用public修饰,便于外部调用。 若定义在类的内部,则必须通过调用该类的成员才能取得其委托的引用, 频繁...

andu1644的博客 1万+

C# 委托事件(史上最简单委托事件的教程)

委托 说白了就像是C语言中的 函数指针 一个简单例子 按钮触发单击事件 消息自动显示 源码如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace 委托 { //项目说明:用委托的方式实现 按...

lisuyan0的博客 6122

不理解C#的枚举,委托事件.请求高手给个通俗易懂例子。就是有代码对代码的详细解释。十分谢谢

枚举相对来说还是比较好理解的。这就好像你的一只手一样,你的手掌就好比枚举的声明,而你的每一个手指你的手掌组成了你整个手。就好像这样的声明: public enum Hand{ 食指, 大拇指, 中指, ... } (虽然写中文是可以的,但是尽量不要使用) 假如你现在要用手指在纸上写一些东西,你就要选择哪个手指,或者直接来一个掌印,就可以这样: MyMind.UserHand(H

jueng 1809

C# 关于委托例子

最近给新人讲委托,就找到曾经不知道在哪个大神处弄的实例 通俗易懂using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { // 这里声明委托 public delegate void Notify( int newValue )

除却猩猩不是猿 1404

大白话系列之C#委托事件讲解(一)

大白话系列之C#委托事件讲解(一)     从序言中,大家应该对委托事件的重要性有点了解了吧,虽然说我们现在还是能模糊,但是从我的大白话系列中,我会把这些概念说的通俗易懂的。首先,我们还是先说说委托吧,从字面上理解,只要是中国人应该都知道这个意思,除非委托2个中文字不认识,举个例子,小明委托小张去买车票。       但是在我们的程序世界里,也是这么的简单吗?当然,什么是

daiyan_csdn的博客 261

C#委托概念的理解示例

本文通过通俗的语言、图例代码实例,描述了C#委托的概念使用方法

C#中的委托事件

一:定义 ——委托是一种存储函数引用的类型 ——就像我们定义一个string str一样,这个str变量就是string类型,因为C#中没有函数类型,但是可以定义一个委托类型,把一个函数赋给这个委托 ——委托的定义函数的定义类似,需要加上delegate关键字但是不需要函数体——委托枚举体,结构体等一样,需要先定义,再声明,再使用——当我们给一个委托的变量赋值时,返回值参数必须定义的委托...

L的博客 1万+

C#委托/事件篇】委托经典实例

实例1: 实例2: 实例3: 实例4: 实例5: 实例6:

星Yeah 的博客 2550

C#中的委托事件实例详解

本人博客中的代码都是本地测试通过后,手敲上来的,会有敲错的情况,但是意思注释理解了就行 本篇文章引用张子阳博客基本思路,然后根据自己的经验,进行了部分的简化修改,委托就在于理解,多看几遍就理解了。 委托:本质上讲委托是一种可以将方法作为参数的方法,可以包含参数也可以不包含参数 事件:从本质上将也是委托,只不过是进行了封装的委托事件可以绑定方法,绑定之后就会监视这些方法,当达到事件的触发条件,就会执行事件绑定的方法 如果比较绕口的话请读10遍就理解了 分五个步骤: 1.委托将方法作为参数传递

cdc8596的博客 2209

C#委托事件的使用示例

一、委托 使用委托时要先实例化,类一样,使用new关键字产生委托的新实例,然后将一个或者多个委托签名匹配的方法委托实例关联。随后调用委托时,就会调用所有委托实例关联的方法。 委托关联可以是任何类或者结构中的方法,可以是静态方法,只要是可以访问的方法都可以。 1.创建一个委托类型使用关键字delegate(委托) 一、委托 使用委托时要先实例化,类一样,使用new关键字产生委托的新实例,然后将一个或者多个委托签名匹配的方法委托实例关联。随后调用委托时,就会调用所有委托实例关联的方法

刘欢的博客 2271

C#委托事件入门案例

C#委托事件的入门案例

qq_33358056的博客 742

委托事件c#

通俗理解:委托就像是一个"方法快递员"。你告诉快递员:"如果有人给我寄包裹(触发条件),你就帮我把这个包裹(方法)送到指定地点(执行)"。核心思想:委托允许你把方法当作参数来传递。多播,Delegate可以存放多个方法 +=放入 -=移除if(实例委托!=0){ 实例委托();//执行实例委托}简化写法:实例委托.invoke();委托的使用:委托类型-->委托实例委托变量存放的是具体函数行为泛型委托Action<> 无返回值 Func<>有返回值示例代码pri

jkkshdndndjks的博客 936
上一篇: C#委托和事件定义和使用
下一篇: C#委托和事件详解
ddry47579
博客等级 码龄12年 10粉丝 0原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值