CuriOddities (part 2) [Kit George]

This week's Curioddity is a result of the way some things in the framework work. I think many of you are going to know the underlying issue here, so I'm going to make it a bit more obscure (not give too much help) to try to keep it interesting.

I would assert that the developer of the following code has a certain expectation about the code, but they've made an assumption about what happens when this code compiles (which will be wrong). The questions I have are 1) what is the expectation I'm alluding to (that's the game part!), and 2) do you think what the framework is doing 'behind the scenes' is the right behavior?

Reminder: If you're wondering what I'm getting at, I have made it slightly obscure, but the nature of the members is the key.

[Visual Basic]

Public Class KTC1

     Public Shared Sub Foo()

     End Sub

     Public Shared Sub Bar()

     End Sub

     Public Shared Sub Zod()

     End Sub

End Class