c# 抽象方法和虚方法的区别

1.虚方法必须有实现部分,抽象方法没有提供实现部分,
抽象方法是一种强制派生类覆盖的方法,否则派生类将不能被实例化。
2.抽象方法只能在抽象类中声明,虚方法不是。
如果类包含抽象方法,那么该类也是抽象的,也必须声明类是抽象的。
3.抽象方法必须在派生类中重写,这一点和接口类似,
虚方法不需要再派生类中重写。
简单说,抽象方法是需要子类去实现的。
虚方法是已经实现了的,可以被子类覆盖,也可以不覆盖,取决于需求。

抽象方法和虚方法都可以供派生类重写。

你可能感兴趣的:(c#,.Net,c#,抽象方法,虚方法)