- public Class Singleton{
- private volatile static Singleton instance;
- private Singleton(){};
- public static Singleton getInstance(){
- if(instance==null){
- synchronized (Singleton.class){
- if(instance==null){
- instance=new Singleton();
- }
- }
- }
- return instance;
- }
- }
这样减少了synchronized出现的次数。当然使用volatile关键字有局限性