实验6类的继承与多态
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
安徽机电职业技术学院实验报告
一、实验目的
1、进一步掌握类的定义与使用;
2、掌握类的继承,以及访问属性public, private和protected的用法;
3、了解类的多态性;
4、掌握使用类来构造应用程序。
二、实验内容
使用Visual Studio .NET 2005,在Point-Circle-Cylinder 示例程序中,添加一个圆锥体类(Cone),该类派生自圆类(Circle),并具有以下属性:高度(Height),以及以下方法:Area (求圆锥体的表面积)、Volumn (求圆锥体的体积)
三、实验步骤
1、将服务器上“面向对象”课件的文件夹中的“Csharp示例第7课\ Exercise ”文件夹复制到本地磁盘上。打开其中的" Exercise.sln ”,完成其中的3个任务。这3个任务目标写在Form1.cs文件中,需要在项目中添加2个类(圆类Circle,圆锥体Cone)的定义。
2、将完成的源程序压缩后,连同本实验报告,一同通过电子邮件交给指导教师。
四、程序运行结果截图
程序运行后单击"Circle类测试"按钮后的运行结果截图:
口"黄的魅承与备态
菁除
圆的趙标是a Y坐标是0,半径是0
新圖的位置和半径是’圆心坐标=及2];半逐丸卫5 直径是:3.50
周长是》26.70
面积是:56,75
[测试口rd■尝〔I [別汛恥eL □斌匕皿裟[测口心1血奥]| 程序运行后单击"Cone类测试"按钮后的运行结果截图: 园的邂标是6 Y坐标是6半径是0 新E的位萱和半径是’ II心坐标=2 2];半径45 園徳休的面积足=132.11 區]锥体和是:103. 69 程序运行后单击”多态性测试”按钮后的运行结果截图: 矩形;£上争坐标t [呱40h长刃比反宽吃0 面机250体积;0 长方体:左上ft坐标:[沁切h长临反宽M反髙度=10面积;165 休和t 115 园心坐标-[0, Q];半径电5 55.7632636012188口]| -回IhEaj [蜃态也責示I 圍心坐标-[0,0],半径P.E 面和* 3.3. 48451D0064T5 测试加皿类珈直胁5£1啖 [藤志性涓示 II B II-B- 面秧 Mrhn Fl 安徽机电职业技术学院实验报告 面向对象程序设计(C#) } } 五、程序源代码(用Winrar 压缩后用附件提交,源代码中要有比较完备的注释 请粘贴于此: Circle 类的代码: P rivate double radius; p ublic double Radius get return radius; set { radius = } public Circle() this .X = 0; this .Y= 0; this .radius = 0; public Circle( int X, int Y, double radius): base(X,Y) this .X = X; this .Y = Y; this .radius = radius; public override double Area() return Math.Round( Math .PI * Math .Po w(this public double zhouchang() return "圆心坐标="+ base.ToString() + " ="+Math.Round( this .zhouchang(),2); //return " 圆心坐标=["+this.X+","+this.Y+"]; "+Math.Round(this.zhouchang())+"\n"+" 圆的面积="+Math.Round(this.Areaes()); ),以下代码 class { Circle : Point value ; .radius,2),2); return 2 * Math. PI * radius; p ublic override string Name get return "圆"; P ublic override string ToString() 半径="+ radius+ "\r 圆的周长 半径="+ radius+"\n"+" 圆的周长 } } 任务 1 的代码: // TODO 1: 给本项目添加 1个 Circle 类的定义,它继承自 Point 类 Circle a = new Circle (5,5,5); string str=+ ":" Output(str); privat e privat e double double Height ; height class { Cone 类的代码: Cone: Circle get set Height = return Height; value ; public Cone() this .Height = 0; this .X = 0; this .Y = 0; public Cone( int X, int Y, double radius, double Height): base(X,Y,radius) this this this this .X = X; .Y = Y; .Height = Height; .Radius = radius; public double Areas() } public { } public get return override return override return base.Area() + ( this .zhouchang() * Height) / 2; double Volume() Math.Round(( base.Area() * Height) / 3,2); string Name "圆锥"; + a.ToString();