在C#中,接口可以实现多态性,通过接口可以实现不同类的对象使用同一个接口方法的情况。接口定义了一个或多个方法的契约,具体的类可以实现这些接口,并提供自己的实现方法。
下面是一个简单的示例,演示了多态性的实现:
using System;
// 定义一个接口
interface IShape
{
void Draw();
}
// 实现接口的类
class Circle : IShape
{
public void Draw()
{
Console.WriteLine("Drawing a circle");
}
}
class Square : IShape
{
public void Draw()
{
Console.WriteLine("Drawing a square");
}
}
class Program
{
static void Main()
{
IShape shape1 = new Circle();
IShape shape2 = new Square();
shape1.Draw();
shape2.Draw();
}
}
在上面的示例中,定义了一个IShape
接口,包含Draw
方法。然后分别定义了Circle
和Square
类来实现IShape
接口,并提供自己的Draw
方法。在Main
方法中,创建了一个Circle
对象和一个Square
对象,分别赋给IShape
类型的变量,然后调用它们的Draw
方法,实现了多态性。