標籤:main null ogr style void ram ati code pac
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 Program40 {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#一個關於委託和事件通俗易懂的例子