四种单例模式

饥饿模式

/**

 * Created by zhanghaipeng on 2018/11/9.

 * 单例模式 懒汉

 */

public class Singleton1 {



    private Singleton1(){}



    private static Singleton1 instance  = null ;



    //线程不安全

//    public static Singleton1 getInstance() {

    //线程安全

    public static synchronized Singleton1 getInstance() {

        if( null == instance) {

            instance = new Singleton1();

        }

        return instance;

    }

}

懒汉模式

/**

 * Created by zhanghaipeng on 2018/11/9.

 * 单例模式 饥饿模式

 */

public class Singleton2 {



    private Singleton2(){}



    //方法一

//    private static Singleton2 instance  = new Singleton2();

    //方法二

    private static Singleton2 instance = null;

    static{

        instance = new Singleton2();

    }



    //线程不安全

//    public static Singleton getInstance() {

    //线程安全

    public static synchronized Singleton2 getInstance() {

        return instance;

    }

}

double check

/**

 * Created by zhanghaipeng on 2018/11/9.

 * 单例模式 double Check

 */

public class Singleton4 {



    private Singleton4(){

        instance = new Singleton4();

    }



    private static Singleton4 instance = null;



    public static Singleton4 getInstance() {

        if(null == instance){

            synchronized (Singleton4.class)

            {

                if(null == instance) {

                    instance = new Singleton4();

                }

            }

        }

        return instance;

    }

}

静态内部类

/**

 * Created by zhanghaipeng on 2018/11/9.

 * 单例模式 静态内部类

 */

public class Singleton3 {



    private Singleton3(){}



    static class Singleton3Holder{

        private static final Singleton3 instance = new Singleton3();

    };



    public static synchronized Singleton3 getInstance() {

        return Singleton3Holder.instance;

    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值