A comment to this question : A 'for' loop to iterate over an enum in Java states :
@jacktrades: It is an implicit method that exists only in the compiler. Therefore the base class can not declare a method with the same name and thus it does not get included in the automatically generated Javadocs. docs.oracle.com/javase/specs/jls/se7/html/jls-8.html#jls-8.9.2 – Torben Mar 5 at 9:32
Since this method only exists in the compiler does this mean it existed before the Enum object becames available in jdk1.5 ? Does this method exist for other objects that are compiler only. java.util.Map contains a values() method but this is documented and so is explicit ? Why define this method .values as implicit, this is a useful method on Enum types so it should be explicit and available on the Enum object type ?