I have found code in which static class contains methods that are not declared static. Compiler doesn't display any warning. It seems confusing, doesn't it?
There is no concept of static class in java (not even static inner class). If you see class is static and it is in working condition then it must be inner class(also called as nested class) which is declared as static. And there is no restriction to have only static methods in static inner classes.
The significance of declaring an inner class static is to be able to create instances of the nested class independent of the class in which it is nested. If static is not mentioned then every instance of the nested class will be associated with an instance of the class in which it is nested.
This question has more details. Java inner class and static nested class