On the Java Generics FAQs - Angelika Langer site there is a section that is confusing me. Here's the excerpt:
"Can generic types have static members?
Yes
Generic types can have static members, including static fields, static methods and static nested types. Each of these static members exists once per enclosing type, that is, independently of the number of objects of the enclosing type and regardless of the number of instantiations of the generic type that may be used somewhere in the program. The name of the static member consists - as is usual for static members - of the scope (packages and enclosing type) and the member's name. If the enclosing type is generic, then the type in the scope qualification must be the raw type, not a parameterized type."
What does she mean by enclosing type? Is it the class the member belongs to? Ok, let's just assume that's what she means; now what does she mean when she says "Each of these static members exists once per enclosing type"? Is she considering that each parameterization of the generic class is it's own enclosing type of the static member? Because if that's what she's saying she's wrong, each parameterization of a generic class shares the same instantiation of static members (i.e. each parameterization does not get it's own instance of a static member, they share the same instances of each static member). Or am I misunderstanding what she means by enclosing type. Any help would be greatly appreciated!!