Java-单例模式
原创
©著作权归作者所有:来自51CTO博客作者sxdtzhaoxinguo的原创作品,请联系作者获取转载授权,否则将追究法律责任
单例模式相信大家都不陌生,在JAVAEE应用中,单例模式是一种应用非常广泛的设计模式,应用中许多组件都只需要单个实例,下面介绍单例模式。
使用单例模式的优点:
1.减少创建JAVA实例所带来的系统开销。
2.便于系统跟踪单个JAVA实例的生命周期,实例状态灯。
下面看代码:
package cn.gov.model.test;
/**
* 单例模式:
*
* @author admin
*
*/
public class Singleton {
//使用一个变量来缓存曾经创建的实例
private static Singleton instance;
//将构造器使用private修饰,隐藏该构造器
private Singleton(){
}
//提供一个静态方法,用于返回Singleton实例
//该方法可以加入自定义的控制,保证只产生一个Singleton对象
public static Singleton getInstance(){
//如果instance为null,表明还不曾 创建Singleton对象
//如果instance不为null,则表明已经创建了Singleton对象,将不会执行该方法
if(instance == null){
instance = new Singleton();
}
return instance;
}
public static void main(String[] args) {
//创建Singleton对象不能通过构造器,只能通过getInstance()方法
Singleton ingleton1 = Singleton.getInstance();
Singleton instance2 = Singleton.getInstance();
//将输出true
System.out.println(ingleton1 == instance2);
}
}