Dynamic reloading of changed classes is certainly possible. I routinely use two Open Source programs which do this: Apache JServ (
http://java.apache.org ) and Kent Beck and Erich Gamma's
JUnit (
http://www.xprogrammer.com )
I suggest that if you are interested in this, you download the source code for either or both of the above and have a look at how they do it. It's getting better with the more recent
Java runtimes, but beware that class
unloading in particular is often not implemented very well.