Joyce's short answer is all you really need here. But Ilja's post would seem to raise the question: what about a local class declared in a
static method? Answer: this is also non-static. You can't declare it as static, and it's not implicitly static, therefore it's still an inner class (just like a local class in a nonstatic method). However a local class declared in a static method is considered to be in a
static context. Such a class is like a static nested class in that it has no access to nonstatic members of the enclosing class, and no access to a "this" reference for the enclosing class. (I.e. no OuterClass.this may be used.) However a local class in a static context is still considered an inner class, and shares other characteristics and limitations of inner classes - such as not being allowed to declare static members.
So, a local class in a static method is sort of a cross between a static nested class and a "traditional" (completely nonstatic) inner class. The JLS chose to describe it as an inner class with special rules. Which means, among other things, you can never declare a local class as static, even if it's declared inside a static method.