用C#编写一个程序计算“正方形、圆形”两种图形的面积,要求: a)抽象出一个基类; b)在其中声明一个抽象函数用来求面积; c)利用派生类定义“正方形、圆形”; d)编写主函数并测试
时间: 2024-10-06 19:05:49 浏览: 31
在C#中,我们可以创建一个名为`Shape`的抽象基类,用于表示所有形状,并定义一个抽象方法`CalculateArea()`来计算面积。然后我们分别为正方形和圆形创建派生类,每个派生类都会覆盖这个抽象方法提供各自的面积计算方法。
```csharp
// 定义抽象基类 Shape
public abstract class Shape
{
public abstract double CalculateArea();
}
// 派生类 Square - 正方形
public class Square : Shape
{
private double side;
public Square(double side)
{
this.side = side;
}
public override double CalculateArea()
{
return side * side;
}
}
// 派生类 Circle - 圆形
public class Circle : Shape
{
private double radius;
public Circle(double radius)
{
this.radius = radius;
}
public override double CalculateArea()
{
return Math.PI * radius * radius;
}
}
// 主函数
public static void Main(string[] args)
{
// 测试正方形和圆形
Square square = new Square(5);
Console.WriteLine($"正方形的面积: {square.CalculateArea()}");
Circle circle = new Circle(3);
Console.WriteLine($"圆形的面积: {circle.CalculateArea()}");
// 输出结果
阅读全文