美文网首页
7.单例模式-懒汉式-静态内部类

7.单例模式-懒汉式-静态内部类

作者: 测试员 | 来源:发表于2019-11-20 00:03 被阅读0次

    步骤

    1)无参构造私有化
    2)静态内部类new对象
    3)对外提供一个静态方法来返回对象

    优点

    避免了线程不安全,利用静态内部类特点实现延迟加载,效率高

    缺点

    没有缺点,至于今天依然相对完美【2019.11.19】

    说明

    类装载时,静态内部类不会被装载。调用公共方法时,加载内部类,加载只会有一次,所以线程安全。【在类进行初始化时,别的线程是无法进入的。 】

    代码实现

    package com.yuan.dp.singleton;
    
    /**
     * 单利模式-懒汉式-静态内部类
     *
     * @author Yuan-9826
     */
    public class SingleTon_6 {
        /**
         * 1.构造私有化
         */
        private SingleTon_6() {
        }
    
        /**
         * 2.构建静态内部类
         */
        private static class InsideSingleTon_6 {
            private static final SingleTon_6 SINGLE_TON_6 = new SingleTon_6();
        }
    
        /**
         * 3.提供公共方法获取实例
         *  调用该方法时才会加载静态内部类
         * @return
         */
        public static SingleTon_6 getInstance() {
            return InsideSingleTon_6.SINGLE_TON_6;
        }
    }
    
    

    相关文章

      网友评论

          本文标题:7.单例模式-懒汉式-静态内部类

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