饿汉式单例模式示意图: 饿汉式单例模式:HurrySingleton.java package pattern.singleton; /** * ----------------------------------------- * @描述 饿汉式单例 * @作者 fancy * @邮箱 fancydeepin@yeah.net * @日期 2012-7-31 <p> * ----------------------------------------- */ public class HurrySingleton { private static final HurrySingleton INSTANCE = new HurrySingleton(); //私有化构造子,阻止外部直接实例化对象 private HurrySingleton(){ } /** * <B>方法描述:</B> * <p style="margin-left:20px;color:#A52A2A;"> * 获取类的单例实例 * @return <span style="color: #008080;"> 返回类的唯一实例 </span> */ public static HurrySingleton getInstance(){ return INSTANCE; } } 懒汉式单例模式示意图: 懒汉式单例模式:LazySignleton.java package pattern.singleton; /** * ----------------------------------------- * @描述 懒汉式单例 * @作者 fancy * @邮箱 fancydeepin@yeah.net * @日期 2012-7-31 <p> * ----------------------------------------- */ public class LazySignleton { private static LazySignleton INSTANCE = null; //私有化构造子,阻止外部直接实例化对象 private LazySignleton(){ } /** * <B>方法描述:</B> * <p style="margin-left:20px;color:#A52A2A;"> * 获取类的单例实例 * @return <span style="color: #008080;"> 返回类的唯一实例 </span> */ public static LazySignleton getInstance(){ if(INSTANCE == null){ synchronized (LazySignleton.class) { if(INSTANCE == null){ INSTANCE = new LazySignleton(); } } } return INSTANCE; } } [ 随笔均原创,转载请注明出处:http://www.blogjava.net/fancydeepin ]