zoukankan      html  css  js  c++  java
  • 单体设计模式

    单体模式

    简单介绍:

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

    实现思路

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

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


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

    总结

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

  • 相关阅读:
    作用域 + this指向 的一道没面试题
    找出数组中最大的值
    统计数组中每个值出现的次数, 统计对象中每个字符出现的次数
    uniapp在h5 和 APP 端兼容性 bug 解决方案
    数组去重的常用方法,利用Promise实现函数按序执行
    momentjs实现距离当前时长并且回现中文效果
    SQL server 上机练习题
    JS 9
    JS 8
    JS 7
  • 原文地址:https://www.cnblogs.com/wzjhoutai/p/6873017.html
Copyright © 2011-2022 走看看