甄平空间

交流与互助
C#中的私有构造函数

   如果类T只声明了私有实例构造函数,则在T的程序文本外部,既不能从T派生,也不可能直接创建T的实例。因此,如果一个类只包含静态成员,并且不想被实例化,则添加一个空的私有实例构造函数就可以防止实例化。例如:
public class Trig
{

 private Trig() {}                    //防止实例化
  public const double PI = 3.14159265358979323846;
  public static double Sin(double x) {...}
  public static double Cos(double x) {...}
  public static double Tan(double x) {...}

}
   Trig类用于将相关的方法和常量组合在一起,但并不希望被实例化。因此该类声明了一个空的私有实例构造函数。如果要取消自动生成的默认构造函数,则必须至少声明一个实例构造函数。
  (本文转自:C#编程语言详解)

posted on 2007-12-18 15:32  甄平  阅读(860)  评论(0编辑  收藏  举报