1. 程式人生 > >C#一個關於委托和事件通俗易懂的例子

C#一個關於委托和事件通俗易懂的例子

args logs class [] 提示 delegate event lin spa

 1 using System;
 2 
 3 namespace Test
 4 {
 5     public class 室友
 6     {
 7         public delegate void 這是一個委托();
 8 
 9         public void 起床晨跑去()
10         {
11             Console.WriteLine("室友:餵,起床啦!");
12             if (叫別人起床該幹嘛幹嘛 != null) //如果有人委托我什麽
13             {
14                 叫別人起床該幹嘛幹嘛();
15 } 16 Console.WriteLine("室友:完事走人,晨跑去!"); 17 } 18 19 public event 這是一個委托 叫別人起床該幹嘛幹嘛; 20 } 21 22 public class 要晨讀的我 23 { 24 public void 起床晨讀() 25 { 26 Console.WriteLine("我:哦,起來了!!!"); 27 Console.WriteLine("我:一二三四五,上網看知乎,刷完知乎再晨讀!
"); 28 } 29 } 30 31 public class 王八犢子 32 { 33 public void 賭五毛起不來() 34 { 35 Console.WriteLine("王八犢子:五毛拿走,勞資要碎覺!"); 36 } 37 } 38 39 class Program 40 { 41 static void Main(string[] args) 42 { 43 44 var 中國好室友 = new
室友(); 45 var 我 = new 要晨讀的我(); 46 var 王八犢子 = new 王八犢子(); 47 48 //我先告訴室友:我要早起晨讀 49 中國好室友.叫別人起床該幹嘛幹嘛 += 我.起床晨讀; 50 //王八犢子來攪屎了 51 中國好室友.叫別人起床該幹嘛幹嘛 += 王八犢子.賭五毛起不來; 52 //於是第二天到了 53 Console.WriteLine("鬧鈴:早上七點鐘..."); 54 Console.WriteLine("系統提示:室友起床了!"); 55 中國好室友.起床晨跑去(); 56 } 57 } 58 }

C#一個關於委托和事件通俗易懂的例子