类的设计和实现

上传人:枫** 文档编号:497870060 上传时间:2023-11-15 格式:DOCX 页数:17 大小:240.48KB
返回 下载 相关 举报
类的设计和实现_第1页
第1页 / 共17页
类的设计和实现_第2页
第2页 / 共17页
类的设计和实现_第3页
第3页 / 共17页
类的设计和实现_第4页
第4页 / 共17页
类的设计和实现_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《类的设计和实现》由会员分享,可在线阅读,更多相关《类的设计和实现(17页珍藏版)》请在金锄头文库上搜索。

1、类的设计和实现 专业:xxxxxxx 姓名:xxxxxx 学号:xxxxxxxx计算机与信息技术学院综合性、设计性实验报告专业:计算机科学与技术 年级/班级:2010级 20102011学年第二学期课程名称.NET程序设计指导教师xxxxx本组成员学号姓名xxxxxxxxxxxxxxx实验地点xxxxxxxxx实验时间xxxxxxxxxx。项目名称类实验类型综合性实验目的:掌握类的声明和对象的创建掌握对象的封装性掌握类的访问修饰符掌握类的继承的实现掌握派生类、抽象类、抽象方法的使用掌握类的多态性掌握运算符的重载了解接口的实现了解事件的实现实验仪器或设备:安装有visual Studio2008

2、的计算机总体设计(设计原理、设计方案及流程等)(1) 通过实验表明类的概念,类的对象,类的成员;(2) 分别例举不同对象的类;实验步骤(包括主要步骤、代码分析等)实验5-1 创建类MyMath,计算周长、面积和球的体积。实验要求:创建类MyMath,包含常量;PI;静态方法:Perimeter(周长)、Area(面积)、Volumne(体积)。运行结果如图5-1所示。操作提示:程序代码如下。按F5键运行:实验5-1的程序运用c+语言编写,其代码如下#include #include const double PI= 3.1415926;class MyMathpublic : MyMath(i

3、nt R)r=R;static double Perimeter(double r)double p=2*PI*r;return p;static double Area(double r)double a=PI*r*r;return a;static double Volume(double r)double v=4*PI*r*r*r/3;return v;void output()cout圆的周长=Perimeter(r)nendl;cout圆的面积=Area(r)nendl;cout圆的体积=Volume(r)nendl;private:double p;double a;double

4、v;double r;void main()double r;coutr;MyMath math(r);math.output ();运行结果是: 实验5-2 创建表示摄氏温度的类TemperatureCelsius实验要求:创建类TemperatureCelsius,包含实例字段degree(表示摄氏温度)和实例方法ToFahreheirt(将摄氏温度转换为华氏温度)。运行结果如图5-2所示操作提示:程序代码如下按F5键运行:实验5-2运用c+语言的代码如下:#includeclass TemperatureCelsiuspublic:TemperatureCelsius(double d)

5、degree=d;double ToFahrenheit(double degree)p=(degree*9/5)+32;return p;private:double degree;double p;void main()double d,cel;coutd;TemperatureCelsius tem(d); cout摄氏温度=dendl;cout华氏温度=tem.ToFahrenheit(d)endl;运行结果是:实验5-3 类的继承的实现实验要求:创建基类Person和派生类Teacher。基类Person包含实例字段name和age;虚函数GetInfo()显示个人信息。派生类Tea

6、cher除了包含基类的namw和age字段。还包含自己的TeacherID字段,并使用关键字override来重写方法GetInfo()。运行结果如图5-3所示按F5键运行:实验5-3运用C+语言编写的代码是:#include#include#includeclass Personpublic:char * name;int age;Person(char * Name ,int Age)name=Name;age=Age;class Teacher:virtual public Personpublic:int id; Teacher(char * Name,int Age,int Id):

7、Person(Name,Age)id=Id;void output()cout姓名:namen年龄:agen编号:idendl;void main() char name20;strcpy(name,Mr.Yu);Teacher t1(name,40,01);t1.output();运行结果是:实验5-4 抽象类、抽象方法、多态性的实现实验要求:创建抽象基类Shape和派生类Rectangle、Circle。利用多态性实现Area(计算面积)和Show(显示图形名称和面积)抽象方法。按F5键运行:实验5-4运用C+语言编写的代码是:#includeclass Shapepublic:virtu

8、al float area()=0;class Triangle:public Shapepublic:Triangle(float h,float w)H=h;W=w;float area()return (float)(H*W*0.5);private:float H,W;class Circle:public Shapepublic: Circle(float r) R=r; float area() return(float)(3.1415926*R*R); private:float R;void main()Shape *p;Triangle tri(1.0,2.0);coutRe

9、ctangle:小矩形,area:tri.area()endl;Circle cir(3.5);coutCircle:大圆,area:cir.area()endl;运行结果是:实验5-5 运算符重载 实验要求:使用符重载创建定义复数相加、相减和相乘的复数类Complex。运行结果如图5-5按F5键运行:实验5-5运用C+语言编写的代码如下:#includeclass Complexpublic:Complex(double r=0,double i=0)realPart=r;imagePart=i;void print()coutrealPart+imagePartiendl;Complex

10、operator +(Complex &c);Complex operator -(Complex &c);Complex operator *(Complex &c);private:double realPart;double imagePart;Complex Complex:operator+(Complex &c)Complex temp;temp.realPart=realPart+c.realPart;temp.imagePart=imagePart+c.imagePart;return temp;Complex Complex:operator - (Complex &c)Co

11、mplex temp;temp.realPart=realPart-c.realPart;temp.imagePart=imagePart-c.imagePart;return temp;Complex Complex:operator*(Complex &c)Complex temp;temp.realPart=realPart*c.realPart-imagePart*c.imagePart;temp.imagePart=realPart*c.imagePart+imagePart*c.realPart;return temp;void main()Complex c1(4,5),c2(3

12、,2),sum,sub,mul;sum=c1+c2;sub=c1-c2;mul=c1*c2;cout第一个复数:;c1.print();cout第二个复数:;c2.print();cout两个复数之和:;sum.print ();cout两个复数之差;sub.print ();cout两个复数之积;mul.print ();其运行结果如下:实验5-6 接口的实现实验要求:声明一个接口ICDPlayer,包含4个接口方法:Play()、Stop()、NextTrack()和PreviousTrack(),以及一个只读属性CurrentTrank。创建类CDPlayer实现该接口,模拟CD的播放、停止、下一音轨、上一音轨的操作。按F5键运行:实验5-7 事件的实现实验要求:(1)声明提供事件数据的类。(2)、声明事件处理委托 。(3)、声明引发事件的类(4)、在事件生产类中声明事件。(5)在事件生产类中实现产生事件代码。(6)声明处理事件的类(事件消费类)。(7)在事件消费类中声明事件处理方法。(8)在事件消费类中订阅或取消事件。按F5

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号