1. 程式人生 > >單例模式中懶漢模式與餓漢模式

單例模式中懶漢模式與餓漢模式

/** 
* @author  萬星明
* @version 建立時間:2018年10月26日 下午4:32:10 
*  	請編寫一個單例模式,類名自己定義(不允許出現無意義命名)。
*  	分別用懶漢和餓漢模式進行實現,並在程式中加入適當註釋,標明此種寫法是懶漢模式還是餓漢模式 
*/

/**
 * 	餓漢單例模式
 */
public class HungrySingle {
	
	//私有化靜態常量自身物件
	private static final HungrySingle hs = new HungrySingle();
	//私有無參構造
	private HungrySingle() {
	}
	//提供公有的靜態訪問方法,返回自身物件
	public static HungrySingle get() {
		return hs;
	}
	

}
/** 
* @author  萬星明
* @version 建立時間:2018年10月26日 下午4:37:26 
* 	請編寫一個單例模式,類名自己定義(不允許出現無意義命名)。
* 	分別用懶漢和餓漢模式進行實現,並在程式中加入適當註釋,標明此種寫法是懶漢模式還是餓漢模式 
*/

/**
 *	 懶漢單例模式
 */
public class LazySingle {
	
	//私有化靜態自身屬性(不可加final),初值為空
	private static LazySingle ls = null;
	
	//與懶漢一樣,私有化無參構造
	private LazySingle() {
	}

	//提供外界訪問方法
	public static LazySingle get1() {
		//如果要用此單例,則建立其物件。(即,用到再建,懶)
		if(ls==null) {
			ls = new LazySingle();
		}
		//返回新建的物件
		return ls;
	}
	
}