概念:保证一个类仅有一个实例,并提供一个访问它的全局访问点
核心:构造方法私有化,提供getInstance方法
注意:java需要用双重检查锁,防止半生成对象,序列化也可以破坏单例,可以考虑实现ExternSerialble接口
java代码
public class SingleTon {
private static SingleTon singleTon;
private SingleTon(){
}
public static SingleTon getInstance(){
if (singleTon == null){
synchronized (SingleTon.class){
if (singleTon == null){
singleTon = new SingleTon();
}
}
}
return singleTon;
}
}