使用接口实现多态 需要满足以下两个条件。
- 定义接口并使用类实现了接口中的成员。
- 创建接口的实例指向不同的实现类对象。
假设接口名称为 ITest,分别定义两个实现类来实现接口的成员,示例代码如下。
interface ITest { void methodA(); } class Test1 : ITest { public void methodA() { Console.WriteLine("Test1 类中的 methodA 方法"); } } class Test2 : ITest { public void methodA() { Console.WriteLine("Test2 类中的 methodA 方法"); } }
class Program { static void Main(string[] args) { ITest test1 = new Test1(); //创建接口的实例test1指向实现类Test1的对象 test1.methodA(); ITest test2 = new Test2(); //创建接口的实例test2指向实现类Test2的对象 test2.methodA(); } }
从上面的执行效果可以看出,使用不同类实现同一接口的方法输出的内容各不相同,这就是使用接口的方式实现多态的方法。