当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

单例模式(饿汉 vs懒汉)

发表于: 2014-09-18   作者:oloz   来源:转载   浏览:
摘要: package 单例模式; /* * 应用场景:保证在整个应用之中某个对象的实例只有一个 * 单例模式种的《 懒汉模式》 * */ public class Singleton { //01 将构造方法私有化,外界就无法用new Singleton()的方式获得实例 private Singleton(){}; //02 申明类得唯一实例 priva
package 单例模式;
/*
 * 应用场景:保证在整个应用之中某个对象的实例只有一个
 * 单例模式种的《 懒汉模式》  
 * */
public class Singleton {
	
	//01 将构造方法私有化,外界就无法用new Singleton()的方式获得实例
	private Singleton(){};
	
	//02 申明类得唯一实例
	private static Singleton instance = null;
	
	//为外界提供获得实例的方法
	public static Singleton getInstance(){
		if(null == instance){//懒汉模式    在Singleton类加载时并没有创建Singleton的实例,当Singleton的实例为null时才创建
			instance=new Singleton();
		}
		return instance;
	}

}


package 单例模式;
/*
 * 应用场景:保证在整个应用之中某个对象的实例只有一个
 * 单例模式种的《 饿汉模式》  较之懒汉模式线程较安全
 * */
public class Singleton1 {
	
	//01 将构造方法私有化,外界就无法用new Singleton()的方式获得实例
	private Singleton1(){};
	
	//02 创建实例
	private static Singleton1 instance = new Singleton1();//饿汉模式 是在类加载时就创建实例
	
	//为外界提供获得实例的方法
	public static Singleton1 getInstance(){
		return instance;
	}

}


package 单例模式;

public class Test {

	public static void main(String[] args) {
		
		Singleton singleton = Singleton.getInstance();
		System.out.println(singleton);
	}
	
}

单例模式(饿汉 vs懒汉)

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号