lesson 5

C#中的委托(delegate)与事件(event)

一、委托就是中间人的意思,c#中的委托允许将一个类中的方法传递给另一个能调用该方法的类的某个对象。程序员可以将A类的一个方法m(被包含在某个delegate中了)传递给另  一个类B,这样类B就能调用类A中的方法m了。

二、定义和使用委托分为三步:声明,实例化,调用

  • 声明一个delegate,其参数一定要和要包含的方法的参数类型形式(数量,类型)一致

声明格式:

delegate 数据类型 委托类型名(参数列表)

  • 定义所调用的方法,其参数形式和第一步中声明的委托类型的参数形式必须一致

  • 定义一个委托类型的实例变量(委托对象),让该变量指向某个要调用的具体方法

格式如下:

委托类型名 委托对象名 = new委托类型名(要调用的方法名);

  • 通过委托对象,调用委托类型变量指向的方法

委托对象名(实参列表);

三、一个委托对象可以同时调用多个方法,这些方法的集合称为调用列表。

委托使用(“+” “—” “+=” “—=”)等运算符向调用列表中增加或移除方法

例:

  

结果如下:

时间: 2024-11-26 08:42:17

lesson 5的相关文章

[小北De编程手记] : Lesson 08 - Selenium For C# 之 PageFactory & 团队构建

本文想跟大家分享的是Selenium对PageObject模式的支持和自动化测试团队的构建.<Selenium For C#>系列的文章写到这里已经接近尾声了,如果之前的文章你是一篇篇的读下来并动手实践的话,我相信你应该可以模拟日常工作中80%常见的手动测试用例了.请注意:我的用词是模拟用例,而不是书写自动化测试用例.一个企业级的自动化测试的构建不是单靠Selenium一种技术就能Hold住的.所谓模拟指的是只能实现自动化的某个Case,但是不能工程化的使用.在本人所接触过几家公司的自动化测试

JMS and ActiveMQ first lesson(转)

JMS and ActiveMQ first lesson -- jms基础概念和应用场景 2011-6-18 PM 9:30 主讲:kimmking <[email protected]> 整理:林木森 ppt下载地址: http://code.google.com/p/activemq-store-mongodb/downloads/list 下面开始: kimmking:介绍下jms和ActiveMQ.在讲JMS之前,我们聊聊相关的背景.谁知道JMS是什么意思? kimmking:对,是

新概念 第一册 lesson 59~60

lesson thirteen Is that all? 1.Review What's the time? It's *** o'clock.    It's ten a.m. It's four p.m. 方式状语: by bus/car/bike on foot 句型: They usually...but today,they... 他们通常都干...事情但今天,他们... e.g. They usually go to school by bus,but today,they are

[小北De编程手记] : Lesson 05 - Selenium For C# 之 API 下

上一篇,我们介绍了一些Selenium WebDriver相关的API,下面我们就接着上一篇继续介绍Selenium常用的API,这一篇的内容主要涉及到以下话题: Selenium API:复杂事件处理 Selenium API:特殊DOM元素处理 Selenium API:截图功能 Selenium API:关于框架扩展 (一)Selenium API:复杂事件处理 首先,我们试想一下这样的场景.待测试的系统支持一些组合键的操作,例如:按住Ctrl的同时点击某个表格的某个单元格,该数据行会高亮

[小北De编程手记] : Lesson 04 - Selenium For C# 之 API 上

这一部分,我准备向大家介绍Selenium WebDriver的常用API,学习这部分内容需要大家最好有一些简单的HTML相关知识,本文主要涉及到以下内容: Selenium API:元素检查 Selenium API:事件处理 Selenium API:其他操作 Selenium API:框架扩展 回顾一下我之前讲过的一个概念:所谓自动化测试,可以简单的归结为是一个从被测试程序中识别或是定位元素以及执行操作和验证元素的过程.从框架设计的角度来讲,一个自动化测试框架的驱动程序应该向使用者提供“元

udacity android 学习笔记: lesson 4 part b

udacity android 学习笔记: lesson 4 part b 作者:干货店打杂的 /titer1 /Archimedes 出处:https://code.csdn.net/titer1 联系:1307316一九六八 声明:本文採用下面协议进行授权: 自由转载-非商用-非衍生-保持署名|Creative Commons BY-NC-ND 3.0 ,转载请注明作者及出处. tips:https://code.csdn.net/titer1/pat_aha/blob/master/Mar

Lesson 61-62 Are Relatives Important to You?

1 Mid-Autumn Festival eg. The Dragon Boat Festival is one of three major Chinese holidays,along with the Spring and Moon Festivals.端午节是三个中国主要节日之一,另两个是春节和中秋节. 2 clan家族,集团 eg. She ranks as my junior in the clan.她的辈分比我小. 3 disinherit剥夺继承权 brother-german

Lesson 57-58 Cosmetic Surgery

1 vogue时尚,流行n  eg. Despite the vogue for so-called health teas,there is no evidence that they are any healthier.尽管现在流行所谓的健康茶饮,但没有证据证明这些茶更有益健康.            正在流行 eg. Pale colours are much more in vogue than autumnal bronzes and coppers.浅色比黄褐色和红棕色这些秋季色彩更

oracle创建用户ORA-01045:user lacks CREATE SESSION privilege 及一些简单操作(one lesson)

scott用户成功连接数据库的具体方法: 1.grant connect, resource to scott;2.grant create session to scott; 3.cmd4.sqlplus scott/tiger Oracle的安全 1.用户管理 用户至少需要会话的权利,否则连接也不成功: 用户在会话的权利上,应该有其他操作的权利: Oracle的用户和口令不区分大小写,真是让人大跌眼镜: Oralce中,所有用户必须明确被授权,才可以操作: SQL Server中,创建的用户

[小北De编程手记] : Lesson 06 - Selenium For C# 之 流程控制

无论你是用哪一种自动化测试的驱动框架,当我们构建一个复杂应用程序的自动化测试的时候.都希望构建一个测试流程稳定,维护成本较低的自动化测试.但是,现实往往没有理想丰满.而这一篇,我会为大家讲解我们在使用Selenium进行Web测试的时候应该如何控制我们的测试流程,从而尽可能地提高自动化测试可维护性.那么,先看一下这一篇的内容主要涉及到的话题: 自动化测试的成本 隐式的等待同步策略 显式的等待同步策略 自定义等待同步策略(一些关于自动化框架设计的探讨) (一)自动化测试的成本 <Selenium