sadier

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  • 一个类的构造函数通常与类名相同。
  • 构造函数不声明返回类型。
  • 一般地,构造函数总是public类型的。如果是private类型的,表明类不能被外部类或对象实例化。常用于Sington模式。也常用于只含有静态成员的类,此情况下类一般还要加一个sealed修饰符。
  • 在构造函数中不要做对类的实例进行初始化以外的事情,也不要尝试显式地调用构造函数。

  感谢muddle的提点!

posted on 2004-03-22 09:56 叉子 阅读(74) 评论(2)  编辑 收藏

评论

# re: C#构造函数的小说明 2004-03-22 12:50 muddle
如果是private类型的,表明类不能被实例化,这通常用于只含有静态成员的类。

这条说明不太对。private表明该对象不能被外部对象实例化,常用于singleton模式。
也用于只含有静态成员的类,这种情况下类一般还要加一个sealed修饰符。


# re: C#构造函数的小说明 2004-03-22 13:02 netfork
GOOD!说的很准确!
补充JAVA的Singleton模式:
一般Singleton模式通常有几种形式:

public class Singleton {

  private Singleton(){}

  //在自己内部定义自己一个实例
  //注意这是private 只供内部调用

  private static Singleton instance = new Singleton();

  //这里提供了一个供外部访问本class的静态方法,可以直接访问  
  public static Singleton getInstance() {
    return instance;   
   }
}

第二种形式:

public class Singleton {
  private static Singleton instance = null;

  public static synchronized Singleton getInstance() {

  //这个方法比上面有所改进,不用每次都进行生成对象,只是第一次     
  //使用时生成实例,提高了效率!
  if (instance==null)
    instance=new Singleton();
  return instance;   }

}
posted on 2004-08-25 17:20  毛小华  阅读(716)  评论(0编辑  收藏  举报