zoukankan      html  css  js  c++  java
  • 关于委托(转)

     

    问:不懂得什么是委托
    答:就是一个类调用另一个类的方法成员
    问:为什么要用委托呢?直接调用不就好了?
    答:当一个方法是多个类的公共方法的时候,往往就可以考虑使用委托
    问:噢,有什么好处吗?统一到一个地方?然后修改方便?
    答:形式统一,实现自便,比如事件源,他只知道当事件发生后要处理,但他不知道要如何处理,也不知道要谁来处理,这时就使用委托,相当于我要告你诽谤,但我不知道司法程序,这件事我就委托给律师帮我实现
    问:那不是调用律师类的方法吗?
    答:对呀,就是一个类调用另一个类的实现方法
    问:然后可能有很多人要找律师?
    答:不能这么理解,应该是我可以随便找个律师帮我处理,是一对多,而不是多对一,一对多是指设计期,而一对一的实现过程是在运行期
    问:那么我要处理的这个方法就是 delegate?
    答:对
    问:它有什么好处?
    答:它把调用和实现分离开来,简单地说,就是我准备好所有的相关材料,到时任何一个律师都可以按指定材料进行相关处理,而不需要依赖于某一个律师,再深一点说,就是降低类间的耦合度

    用委托实现一个类调用另一个类的方法成员,就是降低类间的耦合度

  • 相关阅读:
    [LintCode] 最长上升子序列
    [LintCode] 最长公共前缀
    [LintCode] A + B 问题
    [hihoCoder] 拓扑排序·一
    [LintCode] 拓扑排序
    [LintCode] 第k大元素
    [LintCode] 最小路径和
    [LeetCode] Factorial Trailing Zeros
    [LintCode] 尾部的零
    [LeetCode] Length of Last Word
  • 原文地址:https://www.cnblogs.com/luofuxian/p/2377479.html
Copyright © 2011-2022 走看看