欢迎来到天天文库
浏览记录
ID:41037506
大小:103.00 KB
页数:4页
时间:2019-08-14
《实验五面向对象编程进阶》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、课程实验报告课程名称:C#程序设计实验项目名称:实验五面向对象编程进阶(一)专业班级:B10522姓名:吴淑婷学号:20104052201指导教师:钱文光完成时间:2012年10月11日计算机科学与工程系实验题目:面向对象编程进阶(一)实验目的:1、掌握继承的概念及其应用;2、掌握多态性的有效应用。实验环境:Microsoftvisualstudio2010实验内容及操作步骤:1.运行下列程序,分析其执行结果?classA{publicvirtualvoidE(){Console.WriteLine(“A.E”);}publicvirtualvoidF()
2、{Console.WriteLine(“A.F”);}}classB:A{publicoverridevoidE(){Console.WriteLine(“B.E”);}publicoverridevoidF(){Console.WriteLine(“B.F”);}}classC:B{publicoverridevoidE(){Console.WriteLine(“C.E”);}newpublicvirtualvoidF(){Console.WriteLine(“C.F”);}}classD:C{publicoverridevoidF(){Console.
3、WriteLine(“D.F”);}}classTest{publicstaticvoidMain(){Dd=newD();Aa=d;Bb=d;Cc=d;a.E();b.E();c.E();d.E();a.F();b.F();c.F();d.F();}}父类可以引用子类对象,父类引用只能调用子类继承自父类的方法,父类不能调用子类独有的方法。例如A、B、C类都引用了子类D的对象,a.E()、b.E()、c.E()都是调用的子类继承父类的方法即都是Console.WriteLine(“C.E”),a.F()、b.F()、c.F()同上述原理一致。2.定义一个抽
4、象类shape,通过抽象方法和重载方法来计算各种图形(圆和正方形)的面积和周长。namespace_2{classProgram{staticvoidMain(string[]args){Console.WriteLine("请输入圆的半径:");doubleradius=double.Parse(Console.ReadLine());Circlec=newCircle(radius);Console.WriteLine("圆的周长为:{0},圆的面积为:{1}",c.Perimeter(),c.Area());Console.WriteLine("请输
5、入正方形的边长:");doublelength=double.Parse(Console.ReadLine());Squares=newSquare(length);Console.WriteLine("正方形的周长为:{0},正方形的面积为:{1}",s.Perimeter(),s.Area());Console.Read();}}publicabstractclassShape{publicShape(){}publicabstractdoublePerimeter();publicabstractdoubleArea();}publicclassCi
6、rcle:Shape{privatedoubleradius;publicCircle(doubler){radius=r;}publicoverridedoublePerimeter(){return2*System.Math.PI*radius;}publicoverridedoubleArea(){returnSystem.Math.PI*radius*radius;}}publicclassSquare:Shape{privatedoublelength;publicSquare(doublel){length=l;}publicoverrided
7、oublePerimeter(){return4*length;}publicoverridedoubleArea(){returnlength*length;}}}实验总结:通过此次实验更加掌握和熟悉了继承的概念及其应用,掌握了多态性的有效应用。并从第一个实验了解了“父类可以引用子类对象,父类引用只能调用子类继承自父类的方法,父类不能调用子类独有的方法”的含义。实验成绩
此文档下载收益归作者所有