单例模式中饿汉式与懒汉式的区别


/*
 * 饿汉模式
 * 虚拟机一运行就创建对象,之后直接拿来用就可以了
 * 线程安全的
 */
public class HungryDemo1 {

	private static HungryDemo1 demo1 = new HungryDemo1();
	
	private  HungryDemo1() {
		
		System.out.println("HAHA");
	}
	
	
	public static  HungryDemo1 getInstance() {
		
		return demo1;
	}
	
}









/*
 * 懒汉模式
 * 延迟加载,需要的时候加载
 * 线程不安全
 */
public class LazyDemo1 {

	private static LazyDemo1 d;
	
	private LazyDemo1() {
		
	}
	
	private static LazyDemo1 getInstance() {
		
		if(d==null) {
			d=new LazyDemo1();
		}
		
		return d;
	}
	
}

你可能感兴趣的:(单例模式中饿汉式与懒汉式的区别)