This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
Greetings, Class modifiers ... can somebody help clarify something for me? It seems to be generally accepted that the modifiers for classes do not include static, protected and private. In fact Brogden says "Classes cannot be protected, private, native, static, or synchronized." It seems to me this is always true for native and synchronized, and true for the others when the class in question is a top-level "package" class, but what about nested and inner classes? Either of these can have protected and private accessibility (in addition to public and the default package accessibility that top-level "package" classes can have). In addition, (static) top-level nested classes are declared with the static keyword, so surely static is allowable also (in this particular case)?!?! How should one go about answering a question that asks if static is an acceptiable modifier for classes? [I came across one in the IBM test, and I still don't know what they were expecting.] Thanks, Greg