In at least regular old Java, I found that it would not work the moment you refer to a broken class or method:
An example from my recent history:
I am using a Java editor (written in Java) using a simple plugin system. I updated the editor, but used a plugin compiled with the old version of the editor, which still referred to the class, where for brevity we will call Foo , which was derived from the inner class and into the package by itself.
When I called the plugin, it did not fail until it tried to create an instance of Foo . Since Foo was not at the place where the plugin code was specified, he chose NoClassDefFoundError .
On the side of the note, between at least versions of Java, such as Java 1.5 and Java 1.6, you usually do not need to worry about deleting or moving something, as people will scream about a bloody murder if you mess with the installed API .
source share