zoukankan      html  css  js  c++  java
  • 关于委托的补充及多路委托的实现

    上次我们讲解了委托的使用方式,那我们在什么时候需要使用委托呢?
    当使用事件设计模式时。
    当需要封装静态方法时(接口不允许描述静态方法)。
    当调用方不需要访问实现该方法的对象中的其他属性、方法或接口时。
    需要方便的组合。
    当类可能需要该方法的多个实现时。
    显然,我们的Order就属于是“当类可能需要该方法的多个实现时。”

    在以下情况中使用接口:
    当存在一组可能被调用的相关方法时。
    当类只需要方法的单个实现时。
    当使用接口的类想要将该接口强制转换为其他接口或类类型时。
    当正在实现的方法链接到类的类型或标识时:例如比较方法。

    最后,我们说一下:C#的委托,还提供了一个很有意思的多路广播委托,就是合并委托。
    也就是说,允许将多个委托组合在一起执行

    1           new WarehouseBill().PrintBill(new PrintBill().ListPrint);
    2            pirntBill SimplePrint, ListPrint;
    3            SimplePrint = new PrintBill().ListPrint;
    4            ListPrint = new PrintBill().SimplePrint;
    5            new WarehouseBill().PrintBill(ListPrint + SimplePrint);
    6
    很有意思吧。这样WarehouseBill执行完了ListPrin,会再执行SimplePrint
  • 相关阅读:
    python的包和模块
    python 匿名函数
    hdu 1455 Sticks
    python 返回函数
    python 自定义排序函数
    batchsize对收敛速度的影响
    mini_batch GD
    dropout
    sift
    hog
  • 原文地址:https://www.cnblogs.com/shyleoking/p/680593.html
Copyright © 2011-2022 走看看