当先锋百科网

首页 1 2 3 4 5 6 7

单例模式:在应用该模式中该类永远只有一个实例,即一个类永远只能创建一个对象

饿汉单例:

        在用类获取对象的时候,对象已经提前创建好了一个对象

public class SingInstance {

    /*
    * 饿汉单例
    * 1.定义一个类,并且将构造器私有化
    * 2.定义一个静态变量存储一个对象
    *
    * */
    //定义一个静态变量存储一个对象
    public static SingInstance instance =  new SingInstance();

    //将构造器私有化
    private SingInstance() {
    }

}

懒汉单例:

        在真正需要该对象的时候,才去创建一个对象

public class SingInstance02 {

    /*
    *懒汉单例
    * 1.定义一个类,并将构造器进行私有化
    * 2.定义一个静态变量存储一个对象
    *
    * */

    //定义一个静态变量存储一个对象
    private static SingInstance02 instance ;

    public static SingInstance02 getInstance(){
        //判断是否已经有一个对象,若无则创建,反之则返回该对象
        if (instance == null){
            instance = new SingInstance02();
        }
        return instance;
    }

    //将构造器私有化
    private SingInstance02(){};
}