首页 > 代码库 > 单例模式(饿汉式与懒汉式)

单例模式(饿汉式与懒汉式)

单例模式

一个类在内存只存在一个对象

饿汉式:
Single类一进内存就初始化了

private Single(){}private static Single s = new Single();public static Single getInstance(){return s;}

  

懒汉式:
Single类进内存,对象还没存在,只有调用了getInstance()方法时候,才会创建对象
懒汉式bug解决:双重判断

if(s==null){synchronized(Single.class){if(s==null)s = new Single();}}

  

原则:
定义单例时,建议使用饿汉式。