Yes and No. There are a number of different types of class in
Java, these can be grouped in to 2 main categories Top Level Classes and Inner Classes.
Inner Classes can be subdivided into 4 types Anonymous, Local, Member and Nested Top Level. Of all these class types only one type can use the static keyword, that is the Nested Top Level class. This basically a Member class declared as static.