final
static
このような場合、コードのセマンティクスがクラスの作成順序に依存するようになる可能性があります。 また、初期化されていない変数の使用を誘発する可能性があり、得てして難解で分かりにくいバグを引き起こします。
例:
class Foo { public static int bar = 0; static { System.out.println(bar); } }