各种单例模式
懒汉式
public class LazySingle {
private static volatile LazySingle instance;
private LazySingle(){}
public static LazySingle getInstance(){
if (instance == null){
synchronized (LazySingle.class){
if (instance == null){
instance = new LazySingle();
}
}
}
return instance;
}
}
饿汉式
public class HungrySingle {
private static HungrySingle instance = new HungrySingle();
private HungrySingle(){
}
public static HungrySingle getInstance(){
if(instance != null) return instance;
}
}
scala
单例
//通过半生对象实现静态方法
object SingleTon {
//返回对象
def getInstance(): SingleTon = {
val instance = new SingleTon
return instance
}
}
//私有化构造器
class SingleTon private