C#和VB中的可覆盖和覆盖

时间:2012-07-19 05:30:31

标签: c# .net oop

在C#中,override默认启用,因此,是否需要显式在基类中声明一个可覆盖的方法?如果是的话

  1. Overridable仅限于VB.NET,还是在C#中也是必需的?
  2. 因此可以覆盖哪种方法?它只是抽象类或任何方法的抽象方法吗?

2 个答案:

答案 0 :(得分:33)

VB中的Overridable关键字对应于C#中的virtual关键字。

您必须使方法虚拟才能覆盖它。抽象方法是自动虚拟的。

答案 1 :(得分:3)

在C#中,任何标记为“虚拟”的方法都可以被覆盖。标记为“抽象”的方法不一定被覆盖,它们在实现抽象类的类中实现。它们可以在实现中标记为虚拟。可以覆盖虚拟方法的次数没有限制。

你需要VB.NET的答案吗?