If inner classes need statics, they have to get the outer class to hold them, or you have to use static nested classes or you have to inherit the static fields.
Inner classes are permitted to extend classes that do have static methods and fields.