Java单例模式

下面是三种设计模式的实现。

 

package cn.cnic.lifx.singleton;

public class Singleton 
{
	private Singleton(){ }
	
	private static class SingletonFactory
	{
		static Singleton instance = new Singleton();
	}
	
	public static Singleton getInstance()
	{
		return SingletonFactory.instance;
	}
}

 

 

package cn.cnic.lifx.singleton;

public class Singleton2 
{
	private Singleton2(){ }
	
	private static Singleton2 instance = new Singleton2();
	
	public static Singleton2 getInstance()
	{
		return instance;
	}
}

 

 

package cn.cnic.lifx.singleton;

public class Singleton3 
{
	private Singleton3(){ }
	
	private static Singleton3 instance;
	
	public synchronized static Singleton3 getInstance()
	{
		if(null == instance)
		{
			instance = new Singleton3();
		}
		
		return instance;
	}
}

 

你可能感兴趣的:(java,设计模式)