zoukankan      html  css  js  c++  java
  • 单例模式

    概念:

      单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。

      通过单例模式可以保证系统中一个类只有一个实例。

      可以分为懒汉模式、饿汉模式。

    特点:

    1. 私有的构造函数,防止从外部构造对象。
    2. 静态的私有变量存储对象。
    3. 共开的获取对象的方法。

    好处:

      通过运用单例模式,我们可以避免重复构造对象,从而节省系统的内存资源消耗。

    代码:

      网上有人总结有7种写法,有兴趣的可以写写看,查查看。这里说几个有特点的

    public class Singleton {
        private Singleton(){
        }
        //懒汉模式
        private static Singleton instance = null;
        public  static synchronized Singleton getInstance(){
               if(instance == null){
                   instance = new Singleton();
               }
               return instance;
        }
    }

    public class Singleton {
        private Singleton(){
        }
        //饿汉模式
        private static final Singleton instance = new Singleton();
        public static Singleton getInstance(){
            return instance;
        }
    }

    public class Singleton {
        private Singleton(){
        }
        //双重校验锁
        private volatile static Singleton instance = null;
        public static Singleton getInstance(){
            if(instance==null){
                synchronized(Singleton.class){
                    if(instance == null){
                        instance = new Singleton();
                    }
                }
            }
            return instance;
        }
    }

    public enum SingletonEnum {
        //枚举
        instance;
        private SingletonEnum(){
        }
    }

      还有//静态块,//内部类实现的,本质还是懒汉、饿汉的变体!

  • 相关阅读:
    BeanShell实现写入文件
    LoadRunner11录制APP脚本(2)
    LoadRunner11录制APP脚本(1)
    性能测试 研究方向
    JMeter录制脚本方式(二)
    JMeter常用字符串相关函数
    JMeter中BeanShell用法总结(一)
    第二篇:JMeter实现接口/性能自动化(JMeter/Ant/Jenkins)
    第一篇:JMeter实现接口/性能自动化(JMeter/Ant/Jenkins)
    JMeter设置集合点
  • 原文地址:https://www.cnblogs.com/start-fxw/p/9444566.html
Copyright © 2011-2022 走看看