单体设计模式

Posted wzjhoutai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单体设计模式相关的知识,希望对你有一定的参考价值。

单体模式

简单介绍:

     单体模式:保证一个类仅有一个实例,并提供一个訪问它的全局訪问点。

实现思路

     假设要求该类仅仅能实例化一次,通常的做法是:

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();

 

        }


执行输出的都是当前日期,可见是同一个实例。

总结

     受曾经辈教导:參加工作。要对自己写的代码做整理。最好要有自己的代码库,不要遇到做过的问题再又一次做一遍。

以上是关于单体设计模式的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript中的单体模式四种实现方式

javascript --- 设计模式之单体模式

从单体迁移到微服务的几种模式

#yyds干货盘点# js学习笔记四十一单体模式

JavaScript单例模式

Java单体应用 - 架构模式 - 04.实践练习