标签:
定义:单例模式保证一个类只有一个实例并提供一个全局访问点。
特点:
1、必须保证类只有一个实例
2、必须自己创建自己
3、只能提供唯一一个实例
步骤:
1、将类本身的构造函数私有化,使得外部不能通过new来进行实例化
2、提供一个存储该类实例化的private static变量
3、提供唯一一个对外公开的方法
代码实现:
1、恶汉模式
public class Singleton{
private static Singleton instance = new Singleton();
private Singleton(){}
public static Singleton getInstance(){
return instance;
} }
2、懒汉模式
public class Singleton{
private static Singleton instance;
private Singleton(){}
public static Singleton getInstance(){
return instance == null ? instance = new Singleton() : instance;
} }
3、测试方法
public class Test{ public static void main(String[] args){
Singleton s1 = Singleton.getInstance();
Singleton s2 = Singleton.getInstance();
if(s1 == s2){
System.out.println("s1和s2是同一个对象");
}else{
System.out.println("s1和s2不是同一个对象");
}
} }
标签:
原文地址:http://www.cnblogs.com/kacool/p/5564798.html