package com.dume.server.face;
//请编写代码实现单例模式 ,类名为Singleton
/**
* 参考答案
* 1.饿汉模式
* 2.懒汉模式 ,请注意线程安全问题
* 2.1 或者使用静态内部类
*/
public class Singleton {
public Singleton() {
}
//饿汉式
//因为无法实例化,所以必须是静态的
static private Singleton instance1 = new Singleton();
static public Singleton getInstance(){
return instance1;
}
//懒汉式线程安全
private static volatile Singleton instance2;
//双锁检查,线程安全
public static Singleton getInstance2() {
if(instance2==null){
synchronized (Singleton.class){
if(instance2==null){
instance2 = new Singleton();
}
}
}
return instance2;
}
}
请编写代码实现单例模式 ,类名为Singleton
最新推荐文章于 2022-01-25 09:00:00 发布