Why should virtual methods be explicitly overridden in C#?
By declaring a method as virtual
, you are stating your intention that the method can be overridden in a derived class.
By declaring your implementing method as override
, your are stating your intention that you are overriding a virtual
method.
By requiring that the override
keyword be used to override a virtual method, the designers of the language encourage clarity, by requiring you to state your intentions.