欢迎来到天天文库
浏览记录
ID:35342208
大小:95.75 KB
页数:5页
时间:2019-03-23
《实验报告2面向对象编程基础》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、辽宁工程技术大学上机实验报告2成绩实验名称面向对象编程基础院系姓名实验目的简述本次实验1=1的:1.掌握继承的工作机制和意义。2.掌握派生类的定义方法和实现。3.学握base关键字的使用。4.编写体现类的继承性(成员变量,成员方法,成员变量隐藏)的程序。5.掌握虚拟方法和重载方法的使用。6.掌握抽象类和抽彖方法的使用。实验准备你为本次实验做了哪些准备:仔细阅读《C#而向对象与程序设计》教林熟悉C#语言环境和C#语言如何实现面向对象编程的基本思想.实验进度本次共有3个练习,完成3个。蠶本次实验的收获、体会、经验、问题和教训:通过课堂上跟随老师学习,课后认
2、真阅读教材,跟同学讨论实验结果,上网查阅C#相关资料,通过周一下午的上机操作和其他时间的上机练习,把不会的问题都弄懂,终于完成了实验报告上的三个实验问题,以下是三个实验问题的具体实现过程。教师评语有这样的一个游戏,游戏里面有三种坦克,T50,T60和IPO。这三种坦克可以运动,3停止,转向和射击。4问题1:现要求你走义二个基裘,Tank,包括它的数据成员(坦克的名称,编号和速度〉和方法(运动,停止,钱向和射击儿然后,分别定义Tank的子类T50,T60和7P0,并分别増加它们自己特有的方法。a问题2:完成问题1的基础上,将Tank类中的方法定义为虚方法
3、,并在Tank的子类T50,T60和T90中,分别覆贵父装的方法(在方法中输出这个动作来自于哪个坦克〉。2问题3:Tank类定义为抽象类,并将其方法定义为抽象方法,定义Tank的三个子类T50,T60和T90,并在子类中实现其父类的方法。a问题1和问题2:(问题2是在问题1基础上实现的)classTank{publicstringname;publicstringid;publicintspeed:publicvirtualvoidstart(CommondTypect){Console.WriteLine(,v前进"):}publicvirtualv
4、oidstop(CommondTypect){Console.WriteLineC1?止"):}publicvirtualvoidleft(ConunondTypect){Console.WriteLine("左转"):}publicvirtualvoidright(CommondTypect){Console.V/riteLine("右转"):}publicvirtualvoidshoot(CommondTypect){Console.WriteLineItS*):}}enumCommondTypestartsstop,leftjrightyshoo
5、tclassT50:Tank{publicT50O{this,name="T5CT;this,id="50":this,speed=100:}publicvoidattackone(){Console.WriteLine("攻击目标1"):}publicoverridevoidstart(CommondTypect){Console.WriteLineCTSO加速前进"):}}classT60:Tank{publicT60(){name="T6CT:id="60";speed=200:}publicvoidattacktwo(){Console.Wri
6、teLineC攻击目标2"):}publicoverridevoidleft(ConunondTypect){Console.WriteLine(*T60连续左转"):classT90:TankpublicT90(){name="T9CT;id="90":speed=300:}publicvoidaftackthree(){Console.WriteLineC攻击目标3");}publicoverridevoidshoot(ConunondTypect){Console.WriteLine("T90猛烈射击"):classProgram{staticv
7、oxdMainCstring[]args){Tankt=ne・Tank();Console.Write("IhX坦克名称:na»e=Console.ReadLine():if(t.naae==*T50"){TSOA=newT50O;A.attackoneO:A.start(ConK»ondIype>start):Console.WriteLine{0}{1}{2}',}elseif(t.name=="T60*){T60B=ne・T60():B.attacktwoO:B.left(ComaondType.left):Console.WriteLine(*
8、*{0}{1}(2)}elseif(t.nane==T9CT){T90C=newT90():C
此文档下载收益归作者所有