public static void OnDisplay(object sender, BoiledEventArgs e)//静态方法 { Boiler boiler = sender as Boiler; Console.WriteLine("显示器:{0}", boiler.type); Console.WriteLine("显示器:水温到达{0},水开啦,屏幕闪烁......", e.temperture); }
public void OnAlarm(object sender, BoiledEventArgs e) { Boiler boiler = sender as Boiler; Console.WriteLine("报警器:{0}", boiler.type); Console.WriteLine("报警器:水温到达{0},水开啦,嗡嗡嗡嗡.....", e.temperture); }
public void BoilWater() { Boiler b = new Boiler(); Alarm a = new Alarm(); Monitor m = new Monitor(); //先给报警器、显示器注册烧水事件 b.BoilEvent += a.OnAlarm; //b.BoilEvent += (new Alarm()).OnAlarm;//给匿名对象注册方法 b.BoilEvent += m.OnDisplay; #region .Net Framework中的委托与事件 b.Boiled += a.OnAlarm; b.Boiled += Monitor.OnDisplay;//注册静态方法 b.BoiledWater(); #endregion //开始烧水 b.BoilWater(); }