c#第7次实验指导书

c#第7次实验指导书

ID:11865075

大小:34.50 KB

页数:6页

时间:2018-07-14

c#第7次实验指导书_第1页
c#第7次实验指导书_第2页
c#第7次实验指导书_第3页
c#第7次实验指导书_第4页
c#第7次实验指导书_第5页
资源描述:

《c#第7次实验指导书》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、C#第7次实验指导书本文由lixuan6780贡献doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。事件、继承和多态1.实验目的和要求掌握对象之间通信的基本方法;掌握继承和多态性的实现方法;熟悉接口技术在继承中的应用。2.实验内容(1)创建一组相关类:第二个类响应第一个类的事件,第三个类又响应第二个类的事件。当第一个类的对象发生指定事件时,将引发一系列对象的连锁反应。(2)创建学生类Student及其派生类Undergraduate和Graduate,并在Windows窗体中

2、显示不同类型的学生信息。(3)模拟银行卡支付系统,定义支付接口IPayable,在基类BankCard中实现基本支付功能;在派生类中重载基类方法,实现支付功能的多态性。3.实验指导实验1.模拟连锁反应事件(1)创建C#控制台应用程序L7_1。(2)在程序中新建一个表示太阳的类Sun,在其中定义一个事件OnRise,一个成员方法Rise,并在方法中引发事件。参考源代码如下(太阳只有一个,所以将其定义为静态类):publicstaticclassSun{publicstaticeventEventHandlerO

3、nRise;publicstaticvoidRise(){Console.WriteLine("太阳从东方升起……");if(OnRise!=null)OnRise(null,null);}}(3)在程序中新建一个公鸡类Cock,在其中定义私有字段_name,针对Sun.OnRise事件的处理方法Sun_OnRise,事件OnSing,以及引发该事件的方法Sing;在类的构造函数中初始化字段,并将事件处理方法与事件相关联。参考源代码如下(Sun_OnRise方法中调用了Sing方法,表示太阳升起会使公鸡打鸣)

4、:publicclassCock{privatestring_name;publicCock(stringname){_name=name;Sun.OnRise+=newEventHandler(Sun_OnRise);}privatevoidSun_OnRise(objectsender,EventArgse){Console.WriteLine("公鸡{0}:",_name);Console.WriteLine("雄鸡一声天下白!");this.Sing();}publiceventEventHandle

5、rOnSing;publicvoidSing(){Console.WriteLine("喔喔喔……");if(OnSing!=null)OnSing(this,null);}}(4)在程序中新建一个主人类Host,在其中同样定义字段_name,起床事件OnGetup,起床方法Getup(引发起床事件),养鸡方法Foster,以及Cock.OnSing事件的处理方法c1_OnSing,并在Foster方法中与事件相关联。参考源代码如下(c1_OnSing方法中调用了Getup方法,表示公鸡打鸣会使主人起床):p

6、ublicclassHost{privatestring_name;publicHost(stringname){_name=name;}publiceventEventHandlerOnGetup;publicvoidGetup(){Console.WriteLine("日出而作……");if(OnGetup!=null)OnGetup(this,null)}publicvoidFoster(Cockc1){c1.OnSing+=newEventHandler(c1_OnSing);}privatevoid

7、c1_OnSing(objectsender,EventArgse){Console.WriteLine("主人{0}:",_name);Console.WriteLine("闻鸡起舞!");this.Getup();}}(5)参照Cock类和Host类中的代码,新建狗类Dog和猫类Cat,在其中定义字段_owner以记录其主人对象,定义owner_OnGetup方法以处理Host.OnGetup事件(主人起床时,输出狗叫声“汪汪”和猫叫声“喵喵”;)通过属性Owner封装字段_owner,并在其set访问函

8、数中关联事件和事件处理方法。(6)在程序主方法中依次创建鸡、主人、狗、猫对象,而后调用Sun.Rise方法,参考源代码如下:staticvoidMain(){Cockcock1=newCock("花花");Hosthost1=newHost("祖逖");//四声ti:逖。Host1.Foster(cock1);Dogdog1=newDog("旺财");dog1.Owner=host1;Catcat1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。