1. 程式人生 > >事件 與 委託

事件 與 委託

 總結: 1.  事件可以  用 +=                2.  委託 用 =               委託包括 事件委託

 都要呼叫委託方法相應的方法才能呼叫執行

 class Program
    {
         static void Main(string[] args)
        {
            Name testName = new Name("Hello");
            testName.OnTest += testName.DisplayToConsole;    // 這是事件
            // Action showMethod = testName.DisplayToConsole;
            // showMethod();          //1.。 這是委託
            testName.Init();     // 2. 如果去掉這句,則這個Init()方法裡的委託事件並沒有呼叫,則不會執行+= 右邊的函式
            Console.Read();
        }
    }

    public class Name
    {

        public event Action OnTest;

        private string instanceName;

        public Name(string name)
        {
            this.instanceName = name;
        }
        
        public void DisplayToConsole()
        {
            Console.WriteLine(this.instanceName);
        }
        public  void Init()
        {
            OnTest();
        }
    }