在C#中,可以在接口中定义虚拟方法,使其可以在接口的子类中重写。示例如下:
public interface IVirtualInterface
{
// 定义一个虚拟方法
virtual void VirtualMethod()
{
Console.WriteLine("This is a virtual method in the interface");
}
}
public class VirtualClass : IVirtualInterface
{
// 重写接口中的虚拟方法
public override void VirtualMethod()
{
Console.WriteLine("This is a overridden virtual method in the class");
}
}
在上面的示例中,IVirtualInterface
接口中定义了一个虚拟方法VirtualMethod()
,然后在VirtualClass
类中实现了该接口并重写了虚拟方法。当调用VirtualMethod()
方法时,将会调用VirtualClass
类中的重写实现。