- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验四_委托的实现与使用
实验报告
课程名称面向对象程序设计实验名称实验四、委托的实现与使用日期2014.4.16学生学号姓名班级实验目的:
1.理解委托和事件的概念
2.了解委托和事件在C#中的实现实验要求:
1.认真阅读、掌握和本实验相关的教材内容。
2.设计并编写代码完成题目要求的任务。
3.撰写实验报告。实验内容与步骤:
编写一个程序用来模拟考试流程,有一个老师类Teacher,学生类Student,老师引发考试事件,学生进行考试,学生答完题发出完成答题事件,老师收卷。
1)创建一个名为DelegateEvent的控制台项目
2)添加Student类,代码如下,要注意对toString方法的重载,Student类继承自Object类,Object类的默认toString方法返回的是命名空间和类名,Student类返回Student的成员变量name,这样使设计的类更可用。.NET Framework类库大多数类都对toString方法进行了重载
using System;
using System.Collections.Generic;
using System.Text;
namespace DelegateEvent
{
//定义委托
public delegate void delegateFinishExam(DateTime FinishiTime, Student student);
public class Student
{
//用委托定义事件
public event delegateFinishExam FinishExam;
private string name;
public Student(string name)
{
this.name = name;
}
//答题
public void Testing(DateTime BeginTime)
{
Console.WriteLine({0}\t{1}\t开始答题..., name, BeginTime);
}
//答题结束,引发考试完成事件
public void HandInPaper()
{
Console.WriteLine({0}答题完成, name);
FinishExam(DateTime.Now, this);
}
public override string ToString()
{
return this.name;
}
}
}
3)添加Teacher类,代码如下:
using System;
using System.Collections.Generic;
using System.Text;
namespace DelegateEvent
{
public delegate void DelegateStartExam(DateTime StartTime);
public class Teacher
{
public event DelegateStartExam StartExam;
public void NotifyBeginExam()
{
StartExam(DateTime.Now);
}
//收卷
public void AcceptPaper(DateTime acceptTime, Student student)
{
Console.WriteLine(收{0}的考卷, student.ToString())a;
}
}
}
4)改写Program.cs的代码如下:
using System;
using System.Collections.Generic;
using System.Text;
namespace DelegateEvent
{
class Program
{
static void Main(string[] args)
{
Teacher teacher =
您可能关注的文档
- 医学常规数值.doc
- 医学科技翻译技巧.doc
- 医疗部分.doc
- 北京钢研新义简介及业绩表.doc
- 十二五计划相关新闻.doc
- 千古绝对对联.doc
- 华电国际电力股份有限公司奉节发电厂2013应届毕业生应聘简历表.doc
- 华电煤化工.doc
- 华科版选修课指南.doc
- 华侨大学2014-2015学年第一学期两校区班车运行时刻表.doc
- 华为汽车业务核心竞争力剖析-2025-07-新势力.pptx
- 2025全球汽车供应链核心企业竞争力白皮书.pdf
- 2025粤港「组装合成」模块化建筑跨境贸易指南.pdf
- 3.1 做有梦想的少年(课件) 统编版道德与法治七年级上册.pptx
- 6.1友谊的真谛 课件- 统编版道德与法治七年级上册.pptx
- 4.1家的意味 课件- 统编版道德与法治七年级上册.pptx
- 3.2学习成就梦想 课件- 统编版道德与法治七年级上册.pptx
- 5.1走近老师 课件- 统编版道德与法治七年级上册.pptx
- 5.2珍惜师生情谊 课件- 统编版道德与法治七年级上册.pptx
- 1.1 奏响中学序曲 课件 统编版道德与法治七年级上册.pptx
文档评论(0)