C# 事件(Event)

事件是基于委托实现的

1、定义一个事件类,也称发布器

   public class BoilEventClass
    {


       public delegate void BoilHandler(string t);

       public event BoilHandler BoilEvent;//定义一个委托事件


       /// <summary>
       /// 加热的方法
       /// </summary>
       /// <param name="temprature"></param>
       public void JiaRe(int temprature)
       {
           //触发事件的条件
           if (temprature>85) {

               OnBoilEvent ( temprature.ToString() );
           }

       }


       protected void OnBoilEvent(string t)
       {
           if (BoilEvent != null)
           {
               BoilEvent(t);
           }
       }



    }

2、方法中调用,即 订阅器 实现

    class Program
    {
        static void Main(string[] args)
        {

            BoilEventClass b = new BoilEventClass();
            b.BoilEvent += b_BoilEvent;

            while(true){

                int c = Convert.ToInt32(Console.ReadLine());
                b.JiaRe(c);
            }

        }

        static void b_BoilEvent(string t)
        {
            Console.WriteLine("我沸腾了,因为我已经"+t+"度了!");
        }





    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值