您的位置:首页 > 其它

head first 设计模式学习随笔(5)----单件模式

2008-09-19 13:54 309 查看
单件模式:

显而易见,单件模式就是只有一个,并且通过私有构造器的方式不能被继承(继承了就不是正真意义上的单件了),在这一点上和静态类是一致的,但是还是有区别的主要是以下2点:

初始化时间,静态类在编译时初始化,单件类在需要时再初始化

静态类没有构造器,但是单件有一个一次性的构造器,可以根据不同情况进行一次性的复杂构造

当某个类并不需要由构造器初始化并且不在乎初始化的时间时,2者可以混用!

以下是单件模式的Demo:

1 public class Singleton
5
30
31 class Program
32 static void Main(string[] args)
34 Singleton sin = Singleton.GetSingleton("王老五",55);
36 //第二次无效了
37 Singleton sin2 = Singleton.GetSingleton("比尔 盖兹",45);
38
39 if (sin.Equals(sin2))
40 Console.WriteLine("我们两个是相同的实例!");
41 else
42 Console.WriteLine("我们两个是不相同的实例!");
43
44 sin.ShowInfo();
45 sin2.ShowInfo();
46 Console.Read();
47 }
48 }

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: