My neighbor is taking \"Intro to Java\", and asked me to help explain a few of the first-day concepts. I realized that since I do this everyday, I don\'t have the beginner\
If they are learning to program OO have them use BlueJ. They should get the differences after walking through the first tutorial.
You define the classes and when you instantiate them they actually appear at the bottom of the GUI at which point you can call methods on them.
It really helps get the point through better than any analogy you want to try. Even if you nail the analogy, it doesn't translate into code for someone who hasn't learned OO yet (even though for all of us it seems really natural and all these descriptions make great sense.)