Originally posted by Pandu Rangam:
if the constructor is private, then is it a singleton. I mean Math,Runtime, System etc are following Singleton design pattern?
No. Singleton implies private constructor, but private constructor does not imply Singleton.
A private constructor may be used to help to forbid any instantiation of a utility class. It may also be used for instantiable classes whose public construction interface is a factory method, rather than a constructor. Type-safe enums, pre
Java 5, are another use. There are probably more.