zoukankan      html  css  js  c++  java
  • 20140912-事件与委托

    1、委托

    1)各书籍中,大家都在说委托,但大家口中的委托是不同的。大家阐述的角度不同。

    理解委托3个角度:

    ①委托类型:委托是形式上对方法的抽象,方法类。

    ②委托变量:持有零个或多个方法的对象。委托变量与典型的对象不同,可以执行委托,这时委托会执行它所"持有"的方法。

    ③委托机制:类型安全的回调函数实现的一种机制。

    2)技术落脚点

    ①从机制的角度理解

    ②从对象的角度使用委托(变量)。

    A赋值

    B把方法放到(或说封装到)委托变量,当做参数传递

    C委托字段+对应的属性

    3)杂乱思考

    [引言,我该如何定义机制和模型这两个概念]

    1)一切皆是对象。方法也可以是对象。

    2)广义:委托机制。声明委托类型+声明委托类型变量+创建对象(实例,以第一个方法初始化实例),并赋值给委托变量+调用委托对象

    狭义:角度①:委托对象。

             角度②:可以认为委托是持有一个或多个方法的对象。

             角度③:public delegate string Mydelegate(int number);就针对这一行理解,是对方法的抽象,方法类;

    ---------------------------------------------------------------------------------------------------------------------------------

    2、事件

    1)如果说委托机制,那么事件当称为事件模型

    ①立足于下图一条语句理解,事件即委托变量。

    ②事件是建立于委托机制之上的,对委托的封装。且,委托是引用类型,事件是类成员。因为是类成员了,是封装后的了,更安全了。

    ③事件是当某些事发生时,运行另一块中指定方法的机制。

    ④有发布者/订阅者模式,可以成为事件模型。

    2)技术落脚点

    没必要记忆事件模型,会委托即会事件了,区别只在一个event关键字上。

  • 相关阅读:
    第二十一章流 1流的操作 简单
    第二十章友元类与嵌套类 1友元类 简单
    第十九章 19 利用私有继承来实现代码重用 简单
    第二十章友元类与嵌套类 2嵌套类 简单
    第十九章 8链表类Node 简单
    第二十一章流 3用cin输入 简单
    第十九章 10 图书 药品管理系统 简单
    第十九章 11图书 药品管理系统 简单
    第二十一章流 4文件的输入和输出 简单
    第十九章 12 什么时候使用私有继承,什么时候使用包含 简单
  • 原文地址:https://www.cnblogs.com/CharlesZHENG/p/3968141.html
Copyright © 2011-2022 走看看