zoukankan      html  css  js  c++  java
  • 了解委托(Delegate)

    委托是一种全新面向对象语言特性,运行在.Net平台

    基于委托,开发事件驱动程序变得非常简单

    使用委托可以大大简化多线程变成的难度

    理解委托

      int a;   //定义变量

      a=100;//给变量赋值

      int b=a+10; //使用变量

    委托,也可以看成一种数据类型,可以定义变量,但是他是一种特殊的变量

    委托定义的变量能接受的数值只能是一个方法(函数),可以理解成委托就是一个方法(函数)的指针。

                  方法1

    方法调用——委托对象    方法2

                方法3

      public delegate void Mydel(string a); //【1】创建一个无返回值无参数的委托
        
        class Program
        {
            private static void get1( string b)  //【2】根据委托定义一个“具体”的方法实现功能
            {
                Console.WriteLine(b+"你好世界");
            }
         private static void get(string c)  //【2】根据委托定义一个“具体”的方法实现功能
            {
                Console.WriteLine(c+"你好世界");
            }
    static void Main(string[] args)
            {
                Mydel my = new Mydel(get);  //【3】创建委托对象,关联“具体”方法
                my(“中国”);           //【4】通过委托去调用方法(而不是直接使用方法)
           my-=get;      //讲委托变量所代表的具体方法“解绑”
           my+=get1;           //重新指向一个新的方法 Console.ReadKey(); }
    // public delegate void Mydel(string i); //创建一个无返回值有参数的委托 //class Program //{ // private static void get(string a) //方法赋给委托也要是无返回值有参数的 // { // Console.WriteLine("你好世界"+a); // } // static void Main(string[] args) // { // Mydel mydele; // mydele = get; // mydele("中国"); // Console.ReadKey(); // }
  • 相关阅读:
    vue2.0 移动端,下拉刷新,上拉加载更多 封装组件
    Mac 安装RN android开发环境
    JavaScript 复杂判断的更优雅写法
    JSBridge的原理及使用
    FlatList列表组件的使用
    React Native ScrollView中TextInput焦点问题
    pod update报错(Cocoapods: Failed to connect to GitHub to update the CocoaPods/Specs specs repo)报错解决方案
    如何在pc端通过adb连接手机调试,不用usb数据线
    react学习之搭建后台管理系统
    node+koa2+axios踩坑记
  • 原文地址:https://www.cnblogs.com/xiaowie/p/9040282.html
Copyright © 2011-2022 走看看