懒汉和饿汉模式都有代码优化空间,因为synchronized会锁整块代码。
写一个简单的Demo
public class Demo{
private static volatile Demo demo;
public static getInstance(){
if(demo==null){
synchronized(Demo.class){
if(demo==null){
demo = new Demo();
}
}
}
return demo;
}
}