@Safirah With Java's reflection utilities (specifically
ClassLoader
), you can do a lot of stuff that seems cool but will probably get you into trouble. Specifically, you can dynamically load classes at runtime, and with a bit of trickery, you can even reload classes that have already been loaded (
this SO question is a good starting point).