首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET 深入淺出:委派與事件實戰入門

     編輯:關於ASP.NET

委派概念:生活類比與程式定義

委派如同「委託他人辦事」:定義一種**方法簽名相容的型別**,實例化後可指向任何符合簽名的方法,調用時如同直接呼叫該方法。委派是型別安全的函式指標,也是「函式的類別」。

完整範例:宣告、實例化、串聯、調用、移除

// 1. 宣告委派型別
public delegate void PrintHandler(string str);

// 2. 目標類別與方法
public class PrintStr {
    public void CallPrint(string input) {
        Console.WriteLine(input);
    }
}

// 3. 使用
static void Main() {
    PrintStr printer = new PrintStr();
    PrintHandler handler = null;
    
    // 串聯 (多播委派)
    handler += new PrintHandler(printer.CallPrint);
    
    // 調用
    if (handler != null) handler("Hello World!");  // 輸出: Hello World!
    
    // 移除
    handler -= new PrintHandler(printer.CallPrint);
    if (handler == null) Console.WriteLine("handler==null");
}

關鍵特性

  • 多播:+= 串聯多個方法,調用時依序執行。
  • 型別安全:編譯期檢查參數/回傳型別。
  • 事件基礎:event 關鍵字限制委派只能在類別內部觸發,外部只能 +=/-= 訂閱/退訂。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved