>>16 同名の別クラスがあって、部分的なソースでコンパイルした時と、完全なソースでコンパイルした時ではロードされるクラスが違う、とか。
//////////////Test.java////////////////
public class Test{
 public static void main(String[]args){
  System.out.println(new StringBuffer("Test"));
 }
}
//////////////StringBuffer.java////////////////
public class StringBuffer {
  String a;
  public StringBuffer(String a){ this.a=a; }
  public String toString(){ return a.toUpperCase(); }
}
//////////////////////////////
例えばこんなん。Test.javaだけでコンパイルした場合とStringBuffer.java付きでコンパイルした場合では動作が違う。