Andrew, thanks for replying. I'm honored to have the author reply to me.
Each Guy object will generate its own MyBet object?
What's the general rule about this? If an object calls another class and instantiates an object, it will always be distinct from any other slave object that a second parent object calls even if the names are the same?
It confuses me.
How does the compiler know that Joe's MyBet is different from Al's MyBet? Is it because each MyBet is denominated as Guys.MyBet, Guys.MyBet, Guys.MyBet (or its CLR equivalent) by the compiler? (as opposed to an object with the reference name of 'MyBet' sitting in the heap)