>>583 メソッドの省略はまた別の話。
#クラスのバイナリ互換性も絡むし。IBMの製品では明示的に省略するオプションあったけど。
576でいっているのはこういう最適化のこと。
$ cat Test.java
public class Test {
    private static final boolean DEBUG = false;
    public static void main(String[] args){
        if(DEBUG){
            System.err.println("debug");
        }
    }
}

$ javac -g:none Test.java

$ javap -c Test
Compiled from null
public class Test extends java.lang.Object{
public Test();
 Code:
  0:  aload_0
  1:  invokespecial  #1; //Method java/lang/Object."<init>":()V
  4:  return

public static void main(java.lang.String[]);
 Code:
  0:  return

}
>>584
該当する仕様自体はJava2が出来たときには含まれていたから1.3のコンパイラ
でも状況は変わらないんじゃないかな。少なくともIBMの1.3.1では実装されていた。