Constructors can't be private?

I was trying to develop a system where instances of an object can only be created using static functions.

Setting the constructor to private gave me the following error:
1153: A constructor can only be declared public.

Any workaround? Any reason why I’m not allowed to hide the constructor?