美文网首页
java经典设计模式之单例模式

java经典设计模式之单例模式

作者: 三百弄 | 来源:发表于2019-06-11 10:06 被阅读0次

    1、引言

            单例模式是开发中用的最多的模式,随处可见。此处就不在多讲。单例模式有饿汉式,懒汉式。懒汉式后来又衍生出双重校验锁。实现单例模式需要三步:

    1)、构造方法私有,保证无法从外部通过 new 的方式创建对象。

    2)、对外提供获取该类实例的静态方法

    3)、类的内部创建该类的对象,通过第 2 步的静态方法返回


    2、正式学习

    有些情况下必须使用单例模式,如果不使就会产生如下情况:

    2.1、饿汉式

    2.2、懒汉式

            懒汉式线程不安全,当同时一个线程进来还没有执行tools = new Tools()时,另一个线程也进来,则会实例化两个对象,导致线程不安全。可以加上synchroized,缺点就是效率有些低。

    效率低下 效率可以,但同样不安全 双重校验锁

            双重校验锁不仅解决了效率问题,同时还保证了线程安全

    相关文章

      网友评论

          本文标题:java经典设计模式之单例模式

          本文链接:https://www.haomeiwen.com/subject/kuhffctx.html