设计模式-单例模式
最近总结了下几种设计模式,先简单的说下单例,单例很简单,一般都是在WPF或者WinForm里面使用,对单个页面设置单例模式,响应项目中的其他页面
单例模式
一个类只能实例化一个对象
实现方法:
1.将构造方法私有化
2.提供一个静态方法这个对象
3.创建一个单例字段,类型为定义的单例类,设置初始值为空,在构造方法中判断这个字段是否为空,如果为空就返回这个类的对象
1 //定义单例类 2 class Person{ 3 private static Person PersonSingle = null; 4 private Person(){ 5 6 } 7 public static Person GetSingle(){ 8 if(PersonSingle == null){ 9 PersonSingle = new Person(); 10 } 11 return PersonSingle; 12 } 13 public void SayHello(){ 14 Console.WriteLine("大家好"); 15 } 16 } 17 class Program{ 18 public static void Main(string[] args){ 19 Person p = Person.GetSingle(); 20 p.SayHello(); 21 Console.ReadKey(); 22 } 23 }
这里很简单的引入了一个例子,关于单例模式,还有很多地方在使用,就比如当年的飞秋,只能打开一个页面,这种设计模式就是单例模式。