当前位置: 首页 > news >正文

20140912-事件与委托

1、委托

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

理解委托3个角度:

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

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

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

2)技术落脚点

①从机制的角度理解

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

A赋值

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

C委托字段+对应的属性

3)杂乱思考

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

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

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

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

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

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

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

2、事件

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

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

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

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

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

2)技术落脚点

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

转载于:https://www.cnblogs.com/CharlesZHENG/p/3968141.html

相关文章:

  • Greenplum -- 资源队列管理
  • C++范畴下测试数据类型的范围整理
  • iOS UIWebView截获html并修改便签内容
  • MySQL报错解决:ERROR! The server quit without updating
  • Jsp forward plugin的操作和方法
  • SQL手工注入漏洞测试(Sql Server数据库)
  • Windows Core OS 包含了开源组件
  • 快过年了,我给小明制定了一份价值60万的Java学习计划
  • windows程序设计简介
  • 深入理解javascript原型和闭包(1)——一切都是对象
  • ZStack--级联框架
  • 关于安卓通过webservice访问数据库问题
  • 从上万监控到实时示警 浙江绍兴餐饮迎智能“食代”
  • win8.1 virtualbox 安装centos7注意事项
  • Java虚拟机在执行程序时内存划分的区域都有哪些?
  • Golang-长连接-状态推送
  • js 实现textarea输入字数提示
  • MySQL Access denied for user 'root'@'localhost' 解决方法
  • MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
  • Nacos系列:Nacos的Java SDK使用
  • Python爬虫--- 1.3 BS4库的解析器
  • Python学习之路13-记分
  • Sass 快速入门教程
  • Tornado学习笔记(1)
  • 官方解决所有 npm 全局安装权限问题
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • ​软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】​
  • #我与Java虚拟机的故事#连载13:有这本书就够了
  • (1)Nginx简介和安装教程
  • (52)只出现一次的数字III
  • (简单) HDU 2612 Find a way,BFS。
  • (利用IDEA+Maven)定制属于自己的jar包
  • (每日持续更新)jdk api之FileReader基础、应用、实战
  • (算法)Travel Information Center
  • (转)chrome浏览器收藏夹(书签)的导出与导入
  • .NET delegate 委托 、 Event 事件
  • .NET 的静态构造函数是否线程安全?答案是肯定的!
  • .NET 读取 JSON格式的数据
  • .NET 中小心嵌套等待的 Task,它可能会耗尽你线程池的现有资源,出现类似死锁的情况
  • .NET导入Excel数据
  • .NET简谈设计模式之(单件模式)
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)
  • @EnableAsync和@Async开始异步任务支持
  • [AutoSar]BSW_OS 01 priority ceiling protocol(PCP)
  • [C++]C++类基本语法
  • [C++]四种方式求解最大子序列求和问题
  • [CISCN 2023 初赛]go_session
  • [CTF]php is_numeric绕过
  • [Flexbox] Using order to rearrange flexbox children
  • [Google Guava] 1.1-使用和避免null
  • [iOS开发]事件处理与响应者链
  • [JS] node.js 入门
  • [MySQL FAQ]系列 -- 如何利用触发器实现账户权限审计
  • [opencvsharp]C#基于Fast算法实现角点检测
  • [PHP] 代码重用与函数