C#的类,接口及多态实验
(1)在项目中创建一个接口,名称为Body,内有一个名为area的方法,该方法的返回值类型为float。
(2)创建类,名称为Cube,实现Body接口,并有一个float型的成员变量,名称为a,定义Cube类有一个参数的构造方法,该方法可以为a赋初值。
(3)在Cube类中实现area方法,计算立方体面积,公式为面积=6aa,将计算结果作为area方法的返回值。
(4)使用同样方法创建Ball类,实现Body接口,有一个float的成员变量,名称为r,定义Ball类有一个参数的构造方法,该方法可以为r赋初值。
(5)在Ball类中实现area方法,计算球体面积,公式为面积=43.14r*r,将计算结果作为area方法的返回值。
(6)创建主类MainClass,创建主函数main。
(7)在主类中创建public static float getArea(Body b){}方法,该方法可以返回参数对象的表面积。
(8)在主类中分别创建一个Cube类和Ball类的对象,使用构造方法对成员a和r任意复值,使用getArea方法得到两个对象的表面积,并输出至控制台。
using System;
namespace ConsoleApp1
{
public interface Body
{
float area();
}
public class Cube : Body
{
public float a { get; set; }
public Cube(float a) { this.a = a; }
public float area()
{
return 6 * a * a;
}
}
public class Ball : Body
{
public float r { get; set; }
public Ball(float r) { this.r = r; }
public float area() { return 4 * 3.14f * r * r; }
}
class MainClass
{
static void Main(string[] args)
{
var cube = new Cube(5);
Console.WriteLine(getArea(cube));
var ball = new Ball(5);
Console.WriteLine(getArea(ball));
Console.ReadKey();
}
public static float getArea(Body b) { return b.area(); }
}
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!