zoukankan      html  css  js  c++  java
  • 委托与事件例子

    代码
    /* ***********************************************
     * Author        :  lixiaomo
     * Email        :  lixiaomo1989@gmail.com
     * Description    :  妈妈睡觉,猫捉老鼠碰到花瓶,吵醒妈妈。
     * **********************************************
    */
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace MyConsole
    {
        
    public class Master
        {
            
    //定义委托,它定义了可以代表的方法类型
            public delegate void BoilHandler(int iCount);
            
    public event BoilHandler wakeEvent;//声明事件

            
    //主人在睡觉
            public void Sleep(int param)
            {
                Console.WriteLine(
    "Alarm: 忽忽、嘘嘘zzzz 我睡{0}次",param);
            }
            
    //猫捕捉老鼠
            public void Osnap()
            {
                
    for (int i = 0; i < 5; i++)
                {
                    
    if (i != 0)//是否捕捉到老鼠
                    {
                        Console.WriteLine(
    "Action:捕捉到" + i + "只老鼠!");
                        
    if (wakeEvent != null)
                        {
                            wakeEvent(i);
                        }
                    }
                }
            }
            
    //主人被吵醒
            public void wakeing(int param)
            {
                Console.WriteLine(
    "吵醒我{0}次,主人被吵醒!",param);
            }
        }
        
    class Actions
        {
            
    static void Main(string[] args)
            {
                Master master 
    = new Master();
                master.wakeEvent 
    += master.Sleep;
                master.wakeEvent 
    += master.wakeing;

                master.Osnap();
                Console.ReadKey();
            }
        }

    }


  • 相关阅读:
    c++ 11 thread 初试
    java UDP聊天与文件传输
    iOS 基础类解析
    Hadoop HA高可用集群搭建(2.7.2)
    object-c 不定參数的遍历和原理
    9.4 返回更新后的行
    java面向接口编程
    Node.js开发入门—套接字(socket)编程
    shell脚本输出带颜色字体
    shell--read命令
  • 原文地址:https://www.cnblogs.com/u_xiaomo/p/1654900.html
Copyright © 2011-2022 走看看