设计一个接口Ipolygon,其中包含求draw(),实现Rect矩形类和Circle圆形类,并实现接口Ipolygon。在主函数中创建矩形和圆形对象,并调用方法c#
时间: 2024-03-23 17:40:43 浏览: 95
好的,我理解了你的问题。下面是一个示例代码,实现了接口 `Ipolygon`,以及 `Rect` 和 `Circle` 两个类,并在主函数中创建了对象并调用了方法:
```csharp
using System;
interface Ipolygon {
void draw();
}
class Rect : Ipolygon {
int width;
int height;
public Rect(int w, int h) {
width = w;
height = h;
}
public void draw() {
Console.WriteLine("Drawing a rectangle with width {0} and height {1}", width, height);
}
}
class Circle : Ipolygon {
int radius;
public Circle(int r) {
radius = r;
}
public void draw() {
Console.WriteLine("Drawing a circle with radius {0}", radius);
}
}
class Program {
static void Main(string[] args) {
Ipolygon rect = new Rect(10, 5);
rect.draw();
Ipolygon circle = new Circle(7);
circle.draw();
}
}
```
在这个示例代码中,我们定义了一个接口 `Ipolygon`,它有一个方法 `draw()`。然后我们定义了两个类 `Rect` 和 `Circle`,它们都实现了 `Ipolygon` 接口,并且实现了 `draw()` 方法。
在主函数中,我们创建了一个 `Rect` 对象和一个 `Circle` 对象,并将它们存储在 `Ipolygon` 类型的变量中。然后我们调用了它们的 `draw()` 方法,这会分别输出:
```
Drawing a rectangle with width 10 and height 5
Drawing a circle with radius 7
```
这就是一个简单的示例,演示了如何使用接口来实现多态性。
阅读全文