java设计模式---单例模式

单例模式

单例模式是一个最简单的一种设计模式,其实就是Object只有唯一的一个实例,就拿我们天天看到太阳一样,它是唯一的不管我们哪天看看到都是相同的那个太阳(Sun)。
下面我们一起来看看如何实现一个单例呢?

  • 懒汉单例

    public class SingletonSun{
        private static SingletonSun sun=null;//staic 把sun作为一个类变量
        public SingletonSun(){
    
        }
        public static synchronized  Singleton getInstance(){//加synchronized 可以保证获取单例的时候线程安全
        if(sun==null){
                sun=new SingletonSun();
            }
            return sun;
        }
    }
    
  • 恶汉单例

    /**
    *恶汉单例一定是线程安全的
    */
    public class SingletonSun{
        private static final SinglentonSun sun=new SinglentonSun();
        public SinglentonSun(){};
        public SinglentonSun getInstance(){
            return sun;
        }
    }
    

你可能感兴趣的:(设计模式,java,web)