要禁止某种类来创建对象,可以创建一个私有的构造函数。带关键字private的方法只能在其所属的类中调用。这意味着不能在类的外面调用私有构造函数。由于构造函数是在创建对象时被调用的,因此给构造函数加上限定符private实际上可以禁止创建对象。
这样做有什么目的呢?想必大家一直都在用不能用于创建对象的类,如Console类,你在未声明Console对象的情况下,便使用了它的WriteLine和其他方法。还有Math等类允许你不声明就使用它们。
当我们需要大量使用静态方法和数据成员时,通常这么做。因为静态方法和数据成员属于类,而不是属于对象。如果你声明了一个数据和方法都为静态的类,则使用该类声明的对象将不包含任何值。