If a class has a private constructor then it can\'t be instantiated.
So, if I don\'t want my class to be instantiated and still use it, then I can make it static.
If you want to create a factory for a class, you can use a private constructur, and add some static "factory" methods to the class itself to create the class.
An example for this is the Graphics class, with the From* methods.