c# 中抽象方法与虚方法的区别

抽象方法没有实现,只有定义,必须在其子类中override实现。
public abstract void AbstractFunction();
子类复写:
public override void AbstractFunction()
{
   return;
}
虚方法有实现,当子类不实现的时候,则使用父类的虚方法逻辑,否则使用子类复写的逻辑。
public virtual string VirtualFunction()
{
   return "test";   
} 
另:抽象方法只能在抽象类中声明,虚方法则不必。 
原文地址:https://www.cnblogs.com/luoyaoquan/p/2097113.html