- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 4.9委托和事件 事件的定义是:在C#中,事件就是指当对象有重要情况发生时,类通知类的客户程序(方法、行为)的办法。事件最为常见的用途就是图形用户界面,即当用户对界面控件进行操作时,如选择一个命令,就激发了表示控件的类的事件。 简单的说,事件是使得类和对象提供通知的成员。用户在使用时,可以通过提供事件句柄来为事件添加可执行代码。事件是通过委托来实现的。 * 类事件——实现事件的步骤 声明一个委托 声明一个委托类型的事件 根据委托的签名定义事件处理方法 将事件和事件处理方法联系起来 编写触发事件的函数 调用触发事件的函数 * 类事件 下面通过事件实现如下的功能,当用户输入了“你好”时,观察者向控制台输出“你好” 需要编写一个观察者的类Observer,这个类可以获取用户在控制台的输入,在控制台应用程序中添加这样一个类,并为它添加一个Input方法 * 类事件 下面来实Observer类的事件 1.声明委托: 在类的外面添加代码: delegate void DeleHandler(); 这个委托是无参也没有返回值的 2.声明一个委托类型的事件 在Observer类的内部,添加一个事件字段,该事件的类型为委托类型 private event DeleHandler sayHello; * 类事件 3.根据委托的签名定义事件处理方法 在Observer类的内部,添加一个方法,该方法是sayHello事件对应处理方法,该方法需要满足DeleHandler委托的签名 private void OutputHello() { Console.WriteLine(“hello”); } 4.将事件和事件处理方法联系起来 为Observer类添加一个构造函数如下,构造函数中的代码可以将事件和事件处理方法联系起来: public Observer() { sayHello+=new DeleHandler(OutputHello); //事件字段+=new 委托名(方法名); } * 类事件 5.编写触发事件的函数 在Observer类中添加触发事件的函数FireSayHello() private void FireSayHello() { if(sayHello!=null) sayHello(); } * 类事件 6.调用触发事件的函数 修改Observer类的Input方法 public void Input() { While(true) { String input=Console.ReadLine(); if(input==“hello”) FireSayHello(); Console.WriteLine(”是否继续?Y为继续,其他为退出”); if(Console.ReadLine()!=“y”) break; } } * 类事件 6.最后,在主函数中创建类Observer的实例,并调用其Input方法 Observer aObserver=new Observer(); aObserver.Input(); 在线教务辅导网: 更多课程配套课件资源请访问在线教务辅导网 dotNET程序设计课程组 第4章 面向对象基础 * 第4章 面向对象基础 为了深入学习C#,我们需要了解C#的面向对象编程,面向对象编程是一种功能强大的程序设计方法,它以“数据控制访问代码”为主要原则,围绕数据来组织程序。在进行面向对象编程时需要定义数据和作用于数据上的方法。这样,数据类型可以精确的定义出哪种类型的操作可以应用于该数据。 类是面向对象编程的基础,在类中定义了数据和实现这些数据的代码。代码包含在方法中。类、方法是C#的基础。这一章介绍类的基础知识。 * 本章学习要点 理解类的定义 掌握声明类的方法 掌握构造函数和析构函数方法 理解并掌握访问修饰符的用法 掌握类事件的声明以及为类定义事件 * 目录 4.1 类与对象的概述 4.2类的定义 4.3类的使用—实例化及使用对象 4.3.1 声明对象 4.3.2 实例化类得到对象 4.3.3 访问对象 4.4访问控制 4.4.1访问修饰符public 4.4.2访问修饰符private 4.4.3 访问修饰符protected 4.4.4访问修饰符internal 4.5类的封装性与属性 4.5.1类的封装性 4.5.2属性 4.5.3方法 4.6方法的重载 4.7类的构造(方法)函数与析构(方法)函数 4.8静态成员 4.9委托和事件 * 4.1类与对象的概述 从定义上来说,类是一个数据结构,包含数据成员(属性、字段)、功能成员(方法、事件、构造函数和析构函数等)和嵌套类型。 类的三大特点:封装性、继承性和多态性 * 4.2 类
您可能关注的文档
- AutoCAD绘图基础实训教程 何文平 第七章 文字注写新.ppt
- AutoCAD绘图基础实训教程 何文平 第三章 精确绘图方法新.ppt
- AutoCAD绘图基础实训教程 何文平 第十一章 图形输出与综合应用新.ppt
- AutoCAD绘图基础实训教程 何文平 第四章 二维图形编新.ppt
- AutoCAD设计与实训 白剑宇 第1章 AutoCAD与绘图新.ppt
- AutoCAD设计与实训 白剑宇 第5章 平面图案设计新.ppt
- AutoCAD设计与实训 白剑宇 第7章 装配图绘制新.ppt
- AutoCAD设计与实训 白剑宇 第9章 实体编辑与查询型新.ppt
- C C++程序设计 第2版 陈卫卫 C第1章 -1新.ppt
- C C++程序设计 第2版 陈卫卫 C第1章 -2新.ppt
- 2024年地铁职业技能鉴定试卷及答案详解【基础+提升】.docx
- 2024年地铁职业技能鉴定自我提分评估附完整答案详解【必刷】.docx
- 2024年地铁职业技能鉴定试卷word版附答案详解.docx
- 2025年成都市综合门诊医养结合服务模式可行性研究报告.docx
- 2025年户外活动调温缸产品设计与应用研究报告.docx
- 2024年地铁职业技能鉴定能力提升B卷题库及参考答案详解【轻巧夺冠】.docx
- 2024年地铁职业技能鉴定自我提分评估AB卷附答案详解.docx
- 2024年地铁职业技能鉴定自我提分评估及参考答案详解(培优B卷).docx
- 2025年上海市1吨冷库于乡镇小型商超保鲜的可行性研究.docx
- 2024年地铁职业技能鉴定能力提升B卷题库【真题汇编】附答案详解.docx
最近下载
- 基于大模型的生成式检索.pdf VIP
- 西门子伺服操作说明书-SINAMICS_V90_OPI.pdf VIP
- 电力工程施工安全与质量控制管理.docx VIP
- Packing List-装箱单表格模板.xls VIP
- 电力工程施工安全及质量控制管理.doc VIP
- 2025年最新版硫化氢考试题库大全集.doc VIP
- [江西]发电厂2×600mw级机组“上大压小”土建工程施工组织设计.doc VIP
- 《护患沟通技巧》ppt课件.pptx VIP
- 县乡教师选调进城考试《教育心理学》题库及答案(各地真题).docx VIP
- 发电厂“上大压小”2×600MW超临界空冷机组工程土建专业主要施工方案.docx VIP
文档评论(0)