当前位置:新注册送38元体验金 > 新注册送38元体验金编程 > .NET 设计模式之单例模式(一),.net设计模式

.NET 设计模式之单例模式(一),.net设计模式

文章作者:新注册送38元体验金编程 上传时间:2019-08-22

.NET 设计模式之单例模式(一),.net设计模式

1.简单解释:在创建对象时,无论创建多少次,在堆空间上只会申请一次内存空间。

2.例子(1):

public class Singleton{
  private static Singleton _singleton = null;
  //锁
  private static Object singleton_lock = new Object();
  //构造函数私有化
  private Singleton(){
      //初始化代码
  }
  public static Singleton CreateInstance(){
     if(_singleton == null) //先看看是否初始化过,避免每次进入都要判断锁
     {
        lock(_singleton_lock){  //防止多个线程进入
            if(_singleton == null){  //判断单例对象是否为null
               _singleton = new Singleton();
            }
        }
     }
     return _singleton;
  }
}

例子(2):  

public class Singleton{
  private static Singleton _singleton = null;
  //构造函数私有化
  private Singleton(){
      //初始化代码
  }
  //静态构造函数
  static Singleton(){
      _singleton = new Singleton();
  }
  public static Singleton CreateInstance(){
     return _singleton;
  }
}

例子(3): 

 public class Singleton{
    private static Singleton _singleton = new Singleton();
    //构造函数私有化
    private Singleton(){
        //初始化代码
    }
    public static Singleton CreateInstance(){
       return _singleton;
    }
 }

  

 

  

 

设计模式之单例模式(一),.net设计模式 1.简单解释:在创建对象时,无论创建多少次,在堆空间上只会申请一次内存空间。 2.例子(...

本文由新注册送38元体验金发布于新注册送38元体验金编程,转载请注明出处:.NET 设计模式之单例模式(一),.net设计模式

关键词: