zoukankan      html  css  js  c++  java
  • C# 委托与事件的DEMO

    委托的自我理解:就是观察者与被观察者之间的行为事件。

    父亲是被观察者

    儿子是观察者

    儿子随时观察父亲发出的命令

    父亲只发布命令做什么,不关心儿子怎么去做

    儿子收到父亲的委托命令,就去执行,

    class Program
        {
            static void Main(string[] args)
            {
                Sender sender = new Sender();
                Reciver reciver = new Reciver(sender);
                sender.SendMessage("去买东西");
                Console.Read();
            }
        }
        public delegate void SendMessageEventHandler(string msg);//定义委托
        /// <summary>
        /// 父亲
        /// </summary>
        class Sender
        {
            public event SendMessageEventHandler SendMessageEvent;//定义事件
            public void SendMessage(string msg)
            {
                Console.WriteLine("Sender发布命令:" + msg);
                SendMessageEvent?.Invoke(msg);//调用事件
            }
        }
        /// <summary>
        /// 儿子
        /// </summary>
        class Reciver
        {
            Sender sender;
            public Reciver(Sender sender)
            {
                this.sender = sender;
                sender.SendMessageEvent += new SendMessageEventHandler(ReciveMessage);//订阅事件
            }
            public void ReciveMessage(string msg)
            {
                Console.WriteLine("Reciver执行命令:" + msg);
            }
        }

     

  • 相关阅读:
    我的第一篇博客
    汇编语言——基础知识 Cop
    汇编语言第二章实验 Cop
    什么是<!DOCTYPE html>
    python第三方模块安装的几个方式
    linux下安装memcacheQ
    python正则表达式
    边框背景
    伪类
    属性选择符和样式
  • 原文地址:https://www.cnblogs.com/jasonlai2016/p/12443686.html
Copyright © 2011-2022 走看看