Why don the concrete implementations in the JDK have Enumeration (or Iterator) constructors?
Again, this is an instance of an Enumeration serving as a “poor man’s collection” and we’re trying to discourage that. Note however, that we strongly suggest that all concrete implementations should have constructors that take a Collection (and create a new Collection with the same elements). • Why don’t you provide an Iterator.add method? The semantics are unclear, given that the contract for Iterator makes no guarantees about the order of iteration. Note, however, that ListIterator does provide an add operation, as it does guarantee the order of the iteration.