たとえ static コンテキストで宣言されていても、内部クラスは内部クラスなので static メンバを持つことはできない
JLS2 8.1.2 より。ネストクラスでも内部クラスでなければ static メンバを持つことができる。内部クラスでないネストクラスとは、static 宣言されているメンバクラスか、メンバインタフェースのこと。
class StaticButInner { static class NotInner { static int i; } static void test() { class Inner { // コンパイルエラー static int i; } } }