zoukankan      html  css  js  c++  java
  • C# 类(13) 委托

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace Delegate 
    {
      //委托简单说就是可以让方法作为变量进行传递.
     //定义委托,它定义了可以代表的方法的类型
    
       public delegate void MyDelegate(string name);
            
        
        class Program
            { 
            public static void ShowMessage(string Message)
                { Console.WriteLine("Hello" + Message); }
    
            public static void SHowMessage(string Message) // 在C#中是区分大小写的,所以这个方法和上面那个不是一样的.
                { Console.WriteLine("你好" + Message); }
    
    static void Main()
            {
                //定义一个委托变量. 然后绑定方法.
                MyDelegate My = new MyDelegate(ShowMessage);
                //现在可以通过这个委托变量来使用方法了.
                My(" Tony");  //这里会输出Hello Tony.   疑问来了. 我们为什么直接使用方法呢? 还定义一个委托变量干嘛? 多写了几行代码. // 其实委托的用处不是在这里. 我们可以试试这样.
    
               // 委托链, 一个委托变量绑定多个方法.
                My += SHowMessage;
                //输出看看
                My("Tony");  //输出结果将是 HelloTony and 你好Tony.
    
    
    
            }
    //////////////// 分割线, 在方法中传递方法.用方法做参数///////////////////////////////////////////////////////
            //定义一个方法. 
            public static void input(string name, MyDelegate Message) //这里面的Message就是委托变量了. 你可以将一个方法传递进去.
            {
                Message(name);
            }

                //////使用方法来作为参数.///////////////
                input("Tony" , ShowMessage);
                input("Tony",SHowMessage);
     
    } } 
  • 相关阅读:
    从实战角度超级详解中大型企业微服务化的六大核心关键技术
    Web API 入门的相关文章
    发布asp.net core3.1 web api to IIS
    web api 起步之一
    工作中常见的一些英语
    SSIS--Excel Demo
    SSIS中常用的一些Task组件
    企业系统上Azure的建议与注意事项
    POST提交时防止密码泄漏
    转 Netbackup用于技术支持的问题报告(报障模版)
  • 原文地址:https://www.cnblogs.com/mdnx/p/2712639.html
Copyright © 2011-2022 走看看