zoukankan      html  css  js  c++  java
  • C#_委托与事件

    委托:

      把方法当作参数进行传递

    public delegate void AddDelegate(string name);

    public class Ad{

      //addDelegate就是委托的一个实例,把方法当作参数进行传递进去,逻辑分离,解除耦合

      public static void AddHander(string name,AddDelegate addDelegate){

        addDelegate(name);//调用该方法

      }

    }

    public static void Add(string name){ cw(name);}

    调用:

        AddDelegate add = new AddDelegate(Ad.Add);//实例化委托

        Ad.AddHander("abc",add);//把委托当参数传递进去

        

    事件:

    public delegate void CatDelegate();//定义一个委托

    //声明一个猫
    public class Cat{

      public event CatDelegate  catHander;//声明一个事件

      public  void MiaoCat(){
      catHander.Invoke();//执行事件
      }

    }

    定义:委托就是一种类型,事件是委托的一种实例;

    调用:Cat cat =new Cat();

        cat.catHander+=Run;//注册动作 Run()方法

        cat.catHander+=Miao;//注册动作 Miao()方法
        cat.MiaoCat();//执行调用事件方法,过程会依次执行Run、Miao这俩个方法

  • 相关阅读:
    PhpStrom之添加文件夹至左侧目录树
    PhpStorm下载、破解
    ASP.NET 页面执行顺序
    委托的使用 举例猫叫,老鼠逃跑,主人惊醒
    分页显示
    WebForm页面生命周期及asp.net运行机制
    json 对象和json字符串
    说走就走??
    面向多态
    mvc 过滤器篇
  • 原文地址:https://www.cnblogs.com/ingstyle/p/6389353.html
Copyright © 2011-2022 走看看