zoukankan      html  css  js  c++  java
  • 托付和事件的使用

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;


    namespace delegatedemo
    {
        public delegate void BoilDelegate(int temp);
        public class Heater
        {
            public int temprature;
            public event BoilDelegate boilEvent;
            public void Boil()
            {
                for (int i = 0; i <= 100; i++)
                {
                    temprature = i;
                    if (temprature > 95)
                    {
                        if (boilEvent != null)
                        {
                            boilEvent(temprature);
                        }
                    }
                }
            }
        }

    }

    显示器和报警器

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;


    namespace delegatedemo
    {
        public class Alerm
        {
            public void MakeAlerm(int temp)
            {
                Console.WriteLine("滴滴滴,水已经{0}度!", temp);
            }
        }


        public class Display
        {
            public void ShowMsg(int temp)
            {
                Console.WriteLine("水温是{0}度", temp);
                Console.ReadKey();
            }
        }
    }


    调用:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;


    namespace delegatedemo
    {
        class Program
        {
            static void Main(string[] args)
            {
                heater = new Heater();
                heater.boilEvent += new Alerm().MakeAlerm;//注冊报警器发出警报的事件
                heater.boilEvent += new Display().ShowMsg;//注冊显示温度的事件
                heater.Boil();
            }
        }
    }

  • 相关阅读:
    RGB888转RGB666
    bmp文件格式详细解析
    Qt 5简介
    IntelliJ IDEA 快捷键
    猫猫学iOS之小知识之_xcode插件的删除方法_自己主动提示图片插件KSImageNamed有时不灵_分类或宏之类不能自己主动提示,
    sql server 2008出现远程过程调用失败
    Oracle-31-对视图DML操作
    uva 11127(暴力)
    各种排序算法的分析与实现
    我的Android进阶之旅------&gt;怎样解决Android 5.0中出现的警告: Service Intent must be explicit:
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/5131452.html
Copyright © 2011-2022 走看看