All methods are virtual?

  • Thread starter Thread starter Raymond Lewallen
  • Start date Start date
Well, we are talking about VB.NET. I have stopped using words like
"static", "virtual" and "sealed" some times ago because they only cause
confusion in the context of VB.NET programming. There are other words,
with other semantics. And, I agree with you, 'NotOverridable' maps to
'sealed' in C* semantics, but it doesn't in matters of VB.NET semantics.

It's all just about the fact that VB.NET can stand on its own feet. It
doesn't need to borrow terms from the C* terminology.

<rant intensity="medium">

This is actually an area that really annoys me about VB.Net. Words like
virtual and abstract aren't "C#" terms, they're CS terms; they're used
in pretty much every major OO text you'll find, and used to describe
pretty much every OO language out there. I may program in VB.Net these
days, but of the last four programming books I've read, 2 were focused
on java, one on C#, and one was multi-language.

Inventing completely new nomenclature doesn't make these things easier
to learn, it just makes it harder for VB.Net programmers to take
advantage of the vast amount of literature out there.


We've already driven this issue into the ground, but it's interesting
that the actual language spec doesn't back up this part of the
documentation at all...

http://msdn.microsoft.com/library/en-us/vbls7/html/vblrfvbspec7_1_3.asp

"The NotOverridable modifier indicates that an overridable method cannot
be further overridden"

"NotOverridable cannot be combined with Overridable or MustOverride and
must be combined with Overrides."

Nothing there about anything being NotOverridable by default.
 
Back
Top