首页 > 代码库 > 创建型设计模式-----单例模式

创建型设计模式-----单例模式

1:单例模式:

保证一个类中只有一个实例,并提供一个访问它的实例的方法。

最牛逼的单例模式是双重检验:
class Singleton{
  private Singleton(){};  //私有方法
  private static Singleton instance=null; //将类的实例定义为静态的
  public Singleton getInstanSingleton(){
  if(instance==null){        //因为同步是费时间的,所以先判断是否为空,再同步
   synchronized (Singleton.class) {  //同步的是Singleton的class对象;
    if(instance==null){        //因为前面同步的原因,多线程下有可能其他的线程已经创建了实例,所以这个时候还必须再次判断!
     instance=new Singleton();
    }
   }
  }
  return instance;
 }
}
java源码举例:
Runtime.getRuntime(); 返回与当前 Java 应用程序相关的运行时对象。
Calendar.getInstance();获取当前环境下的一个日历;
应用场合是在:资源管理的时候,比如说:windows的回收站,仅有一个。



创建型设计模式-----单例模式