首页 > 代码库 > 设计模式之-----------单例设计模式

设计模式之-----------单例设计模式

饿汉式:
class Single
{
//   提前做好!

     private static final Single s = new Single();
//  私有化 构造函数  无法使用new 创建对象!

     private Single(){}
//  对外提供接口
     public static Single getInstance()
     {
          return s;
     }

}



懒汉式:
     懒汉 顾名思义  就是懒呗 
          什么时候用到 什么时候创建!

class Single1 
{
     private static final Single1 s = null;

     private Single1(){}

     public static Single1 getInstance()
     {
          //  什么时候调用 是什么时候 赋值   懒汉式
          if(a==null)
          //   此处 线程不安全!(不建议使用,尽量使用 饿汉式!)
               s = new Single1();     
          return s;
          
     }

}

 
更新:  带有同步所的 懒汉式
/** Returns singleton class instance */
	public static ImageLoader getInstance() {
		if (instance == null) {
			synchronized (ImageLoader.class) {
				if (instance == null) {
					instance = new ImageLoader();
				}
			}
		}
		return instance;
	}


设计模式之-----------单例设计模式