您的位置:首页 > 其它

常见设计模式之【单例模式】

2012-08-14 22:22 225 查看
遇到类似的问题:生产编号的产生,售票系统等数据需要同步,马上想到单例模式....

例子代码:

package Singleton;
/**
 *@Description: 单例模式
 *@author Potter   
 *@date 2012-8-14 下午10:08:16
 *@version V1.0   
 */
public class App {
	
	public static void main(String[] args) {
		NumDevice g=NumDevice.getInstance();
//		Greedy2 g=Greedy2.INSTANCE;
		System.out.println(g.next());
		show();
	}
	
	public static void show(){
		NumDevice g=NumDevice.getInstance();
//		NumDevice2 g=NumDevice2.INSTANCE;
		System.out.println(g.next());
	}
}


方法一:用类实现:

package Singleton;
/**
 *@Description: 单例类
 *@author Potter   
 *@date 2012-8-14 下午10:01:45
 *@version V1.0   
 */
public class NumDevice {
	private final static NumDevice me=new NumDevice();
	private NumDevice(){
		
	}
	
	public static NumDevice getInstance(){
		return me;
	}
	
	private int count;
	public int next(){
		return count++;
	}
}

方法二:用枚举类

package Singleton;
/**
 *@Description: 单例类
 *@author Potter   
 *@date 2012-8-14 下午10:01:45
 *@version V1.0   
 */
public enum NumDevice2 {
	INSTANCE;
	
	private int count;
	
	public int next(){
		return count++;
	}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: