I happen to see the java.util.Collections class. One cannot instantiate this class. I guess it is due to presence of a private Constructor.
The instance could then be created in this way-
Class collections = java.util.Collections.class;
Constructor cons = collections.getDeclaredConstructor();
cons.setAccessible(true);
Collections instance = (Collections) cons.newInstance();
Firstly why didn't the Java API creators stopped this behavior?
It makes be think when should I really prefer a non-instantiable class over an enum?