用c#解答以下题目并详细注释和解释2、 设计一个Shape接口和它的两个实现类Square和Circle,并进行测试。 提示: 1)Shape接口中有一个抽象方法Area(),方法接收有一个double类型的参数,返回一个double类型的结果 2)Square和Circle中实现了Shape接口的Area()抽象方法,分别求正方形和圆形的面积并返回 在测试类中创建Square和Circle对象,计算边长为2的正方形面积和半径。
时间: 2024-03-19 20:43:24 浏览: 136
设计一个Shape接口和它的两个实现类Square和Circle,要求如下
以下是使用C#实现Shape接口和两个实现类Square和Circle的代码,并进行测试的示例:
```csharp
using System;
// 定义一个Shape接口
public interface Shape
{
double Area(double size);
}
// 实现Square类,继承Shape接口
public class Square : Shape
{
public double Area(double size)
{
return size * size;
}
}
// 实现Circle类,继承Shape接口
public class Circle : Shape
{
public double Area(double size)
{
return Math.PI * size * size;
}
}
// 测试类
class Program
{
static void Main(string[] args)
{
// 创建Square和Circle对象
Square square = new Square();
Circle circle = new Circle();
// 计算边长为2的正方形面积
double squareArea = square.Area(2);
Console.WriteLine("边长为2的正方形面积为:" + squareArea);
// 计算半径为2的圆形面积
double circleArea = circle.Area(2);
Console.WriteLine("半径为2的圆形面积为:" + circleArea);
Console.ReadLine();
}
}
```
注释:
1. 定义了一个Shape接口,其中有一个抽象方法Area(),它接收一个double类型的参数并返回一个double类型的结果。
2. 实现了两个类Square和Circle,它们都继承自Shape接口并实现了Area()方法,分别用于计算正方形和圆形的面积。
3. 在测试类中创建Square和Circle对象,并分别调用它们的Area()方法计算边长为2的正方形面积和半径为2的圆形面积。
输出结果:
```
边长为2的正方形面积为:4
半径为2的圆形面积为:12.566370614359172
```
解释:
上述代码中,我们定义了一个Shape接口和两个实现类Square和Circle,它们都实现了Shape接口中的Area()方法,用于计算正方形和圆形的面积。在测试类中,我们创建了Square和Circle对象,分别调用它们的Area()方法,并传入参数2,计算出边长为2的正方形面积和半径为2的圆形面积。最后输出结果。
阅读全文