委托链其实就是委托类型,只是委托链把多个委托链接在一起而已,也就是说,我们把链接了多个方法的委托称为委托链或多路广播委托。如下:

     public delegate void DelegateTest();

        static void Main(string[] args)
{
//用静态方法来实例化委托
DelegateTest dtstatic = new DelegateTest(Program.method1); DelegateTest dtinstance = new DelegateTest(new Program().method2); //定义一个委托对象,一开始初始化为null,即不代表任何方法。
DelegateTest delegatechain = null; //使用 “+”符号链接委托,链接多个委托后就成为了委托链 delegatechain += dtstatic;
delegatechain += dtinstance; //调用委托链
delegatechain();
Console.Read(); }
private static void method1()
{
Console.WriteLine("这是静态方法");
} //实例方法 private void method2()
{
Console.WriteLine("这是实例方法");
}

从委托链中移除委托

        public delegate void DelegateTest();

        static void Main(string[] args)
{
//用静态方法来实例化委托
DelegateTest dtstatic = new DelegateTest(Program.method1); DelegateTest dtinstance = new DelegateTest(new Program().method2); //定义一个委托对象,一开始初始化为null,即不代表任何方法。
DelegateTest delegatechain = null; //使用 “+”符号链接委托,链接多个委托后就成为了委托链 delegatechain += dtstatic;
delegatechain += dtinstance; //使用 “-”运算符 移除委托
delegatechain -= dtstatic;
//调用委托链
delegatechain();
Console.Read(); }
private static void method1()
{
Console.WriteLine("这是静态方法");
} //实例方法 private void method2()
{
Console.WriteLine("这是实例方法");
}

最新文章

  1. centos 创建swap 交换分区
  2. django model Meta选项
  3. JVM中,对象在内存中的布局
  4. VSS 的修复和扫描
  5. JSONModel 遇见关键字为id或者description
  6. html5 教程网站
  7. Codeforces Round #261 (Div. 2)
  8. Ext.grid.Panel 数据动态改变后刷新grid
  9. 你的 Docker 应用是安全的吗?
  10. VM虚拟机上 实现CentOS 6.X下部署LVS(DR)+keepalived实现高性能高可用负载均衡
  11. Ext & Java 上存图片 Demo
  12. EF Code First中的主外键约定和一对一、一对多关系的实现
  13. 自定义微信小程序导航(兼容各种手机)
  14. Android Studio集成Flutter
  15. 修改文件属性(attrib)
  16. Skynet服务热点火焰图分析
  17. 把java程序作为windows服务运行
  18. python 创建临时文件和文件夹
  19. WebClient和WebRequest获取html代码
  20. redis集群cluster模式搭建

热门文章

  1. P4062 [Code+#1]Yazid 的新生舞会
  2. PostgreSQL 时间函数 extract函数
  3. ELF格式说明
  4. IntelliJ IDEA实时代码模板
  5. spoj Longest Common Substring (多串求最大公共子序列)
  6. Thift初探 (一)
  7. (转)kvm初识
  8. Result window is too large, from + size must be less than or equal to [10000]
  9. 2018-2019-2 《网络对抗技术》Exp8 Web基础 Week11-12 20165233
  10. 使用java写js中类似setTimeout的代码