实验6-类的继承与多态

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

安徽机电职业技术学院实验报告面向对象程序设计(C#)实验6类的继承与多态第1页共5页安徽机电职业技术学院实验报告课程名称面向对象程序设计实验名称实验6类的继承与多态系部信息工程系班级姓名学号实验时间年月日时分~时分地点机位一、实验目的1、进一步掌握类的定义与使用;2、掌握类的继承,以及访问属性public,private和protected的用法;3、了解类的多态性;4、掌握使用类来构造应用程序。二、实验内容使用VisualStudio.NET2005,在Point-Circle-Cylinder示例程序中,添加一个圆锥体类(Cone),该类派生自圆类(Circle),并具有以下属性:高度(Height),以及以下方法:Area(求圆锥体的表面积)、Volumn(求圆锥体的体积)三、实验步骤1、将服务器上“面向对象”课件的文件夹中的“Csharp示例\第7课\Exercise”文件夹复制到本地磁盘上。打开其中的“Exercise.sln”,完成其中的3个任务。这3个任务目标写在Form1.cs文件中,需要在项目中添加2个类(圆类Circle,圆锥体Cone)的定义。2、将完成的源程序压缩后,连同本实验报告,一同通过电子邮件交给指导教师。四、程序运行结果截图程序运行后单击Circle类测试按钮后的运行结果截图:程序运行后单击Cone类测试按钮后的运行结果截图:安徽机电职业技术学院实验报告面向对象程序设计(C#)实验6类的继承与多态第2页共5页程序运行后单击多态性测试按钮后的运行结果截图:安徽机电职业技术学院实验报告面向对象程序设计(C#)实验6类的继承与多态第3页共5页五、程序源代码(用Winrar压缩后用附件提交,源代码中要有比较完备的注释),以下代码请粘贴于此:Circle类的代码:classCircle:Point{privatedoubleradius;publicdoubleRadius{get{returnradius;}set{radius=value;}}publicCircle(){this.X=0;this.Y=0;this.radius=0;}publicCircle(intX,intY,doubleradius):base(X,Y){this.X=X;this.Y=Y;this.radius=radius;}publicoverridedoubleArea(){returnMath.Round(Math.PI*Math.Pow(this.radius,2),2);}publicdoublezhouchang(){return2*Math.PI*radius;}publicoverridestringName{get{return圆;}}publicoverridestringToString(){return圆心坐标=+base.ToString()+,半径=+radius+\r圆的周长=+Math.Round(this.zhouchang(),2);//return圆心坐标=[+this.X+,+this.Y+];半径=+radius+\n+圆的周长+Math.Round(this.zhouchang())+\n+圆的面积=+Math.Round(this.Areaes());}}安徽机电职业技术学院实验报告面向对象程序设计(C#)实验6类的继承与多态第4页共5页任务1的代码://TODO1:给本项目添加1个Circle类的定义,它继承自Point类Circlea=newCircle(5,5,5);stringstr=a.Name+:+a.ToString();Output(str);Cone类的代码:classCone:Circle{privatedoubleHeight;privatedoubleheight{get{returnHeight;}set{Height=value;}}publicCone(){this.Height=0;this.X=0;this.Y=0;}publicCone(intX,intY,doubleradius,doubleHeight):base(X,Y,radius){this.X=X;this.Y=Y;this.Height=Height;this.Radius=radius;}publicdoubleAreas(){returnbase.Area()+(this.zhouchang()*Height)/2;}publicoverridedoubleVolume(){returnMath.Round((base.Area()*Height)/3,2);}publicoverridestringName{get{return圆锥;}}安徽机电职业技术学院实验报告面向对象程序设计(C#)实验6类的继承与多态第5页共5页publicoverridestringToString(){return圆心坐标=[+this.X+,+this.Y+];半径=+this.Radius+\n+圆锥的高=+this.Height+圆锥的表面积=+Math.Round(this.Areas(),2);}}任务2的代码://TODO2:给本项目添加1个Cone类的定义,它继承自Circle类Coneb=newCone(1,2,3,4);stringstrs=b.Name+:+b.ToString();Output(strs);六、思考题:1、请说明private、public、protected这3个访问修饰符的作用public成员,可以从程序的任何位置,通过该类(基类或派生类)的对象引用,来访问它。private成员,只能在基类的主体中访问它protected(保护的)成员,只能在基类和它的派生类中访问。2、请说明什么是类的多态性?类的多态性有什么样的优点?多态性是一个面向对象的概念,它允许以相似的方式来对待所有的派生类,尽管这些派生类是各不相同的。创建派生类的目的是为了获得更多的特殊功能。通过继承,一个类可以用作多种类型:可以用作它自己的类型、任何基类型,或者在实现接口时用作任何接口类型。这称为多态性。便于代码的调用和减少代码量。

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功