zoukankan      html  css  js  c++  java
  • C#委托简介

    【什么是委托】

    允许我们将方法作为参数传递到另一个方法中

    【形式】

    //普通方法
    public void GreetingDelegate(string name) 

    //委托的形式
    public delegate void GreetingDelegate(string name)

    //使用委托
    private static void GreetPeople(string name, GreetingDelegate MakeGreeting)

    【与方法的区别】

    1.委托前面有关键字delegate

    2.委托只能声明在类外

    【解析】

    委托本质是一个类,所以具有类的特性,故只能声明在类外

    因此可以实例化

    GreetingDelegate delegate1, delegate2;
        delegate1 = EnglishGreeting;
        delegate2 = ChineseGreeting;
        GreetPeople("Liker", delegate1);
        GreetPeople("李志中", delegate2);

    注意:没有new关键字

    可以使用+=,-=

    GreetingDelegate delegate1;
        delegate1 = EnglishGreeting; 
        delegate1 += ChineseGreeting;
        GreetPeople("Liker", delegate1);
    
    delegate1 -= EnglishGreeting;
        GreetPeople("李志中", delegate1);

    因为可以将多个方法绑定到同一个委托

    注意:

    第一个等于是赋值,第二个是绑定,不能直接使用+=

    记录编程的点滴,体会学习的乐趣
  • 相关阅读:
    Java中断机制
    RPC原理
    synchronized和ReentrantLock的区别
    dubbo入门
    Zookeeper入门
    分布式事务
    Mysql索引会失效的几种情况
    java代码执行过慢的问题定位
    持续集成
    Mycat 数据库分库分表中间件
  • 原文地址:https://www.cnblogs.com/AduBlog/p/13602888.html
Copyright © 2011-2022 走看看