[Karen]: Is it true that the abstract and static modifiers can only apper together when applied to an inner class?
They can only appear together on a nested class, yes. A static nested class is by definition not an inner class, despite a large number of people who don't seem to know this.
[Karen]: If so, why would you do that?
Why not? It's not common, but there's nothing wrong with it either. When applied to a class, "static" has nothing at all to do with overriding - so the decision of whether to make a class static is completely independent of the decision to make it abstract. You can decide these separately. Generally, make a nested class static if you don't need any enclosed "this" reference to the outer class, and/or if you want the class to have any static members. Make the class abstract if you've got a partial implementation that can be shared among several subclasses. If both these conditions occur for the same class, great, you can have a static abstract class. If not, then you can't. There's nothing special or magic about this combination - you just need to understand the rules for static nested classes, and the rules for abstract classes. [ December 09, 2007: Message edited by: Jim Yingst ]
"I'm not back." - Bill Harding, Twister
Joined: Nov 10, 2007
That was extremely helpful for solidifying the information I read. Thanks a million.