单体模式
简单介绍:
单体模式:保证一个类仅有一个实例。并提供一个訪问它的全局訪问点。
实现思路
假设要求该类仅仅能实例化一次。通常的做法是:
1、 在类中声明一个标志变量。用来查看该类是否被实例化。
2、 将该类的构造函数私有化,使其仅仅能在类中訪问。
3、 写一个静态方法,用于外面调用实例化类。假设类已经存在则就不再实例化。
实现
这里用一个person类举例。
创建一个person类
public class Person { private static Person person =null; private DateTime _birthday=newDateTime(1990,12,12); public DateTime Birthday { get { return _birthday; } set { _birthday = value; } } private Person() { } public static PersonGetInstance() { if (person == null) { person = new Person(); } return person; } }
在外部调用方法
static void Main(string[] args) { Person person = Person.GetInstance(); DateTime birthday = DateTime.Now; person.Birthday =birthday; Console.WriteLine("{0:D}",person.Birthday); //再次的到实例 Person per = Person.GetInstance(); Console.WriteLine("{0:D}",per.Birthday); Console.Read(); }
执行输出的都是当前日期。可见是同一个实例。
总结
受曾经辈教导:參加工作。要对自己写的代码做整理。最好要有自己的代码库,不要遇到做过的问题再又一次做一遍。