Ruby

______Ruby

设计模式------单例模式之饿汉式和懒汉式

单例模式可以分为懒汉式和饿汉式

饿汉式是线程安全的,无需关注多线程问题,它是在类加载时创建实例

懒汉式不是线程安全的,创建实例的时间与饿汉式相反是延时加载

饿汉式示例代码:


public class Test{ 
    private Test(){}
    private static Test test= null;  
    public static synchronized Test getInstance(){
             if(test== null) {                       
                 test = new Test();   
             }
             return test;
     }
}

懒汉式示例代码:

public class Test{ 
public Test(){}
    private static Test test = new Test(); 
    public static Test getInstance(){
        return test;  
}
}

单例模式的三要素:

          1、私有化构造方法

          2、一个指向自己实例的私有静态变量

          3、供外部调用的返回自己实例的静态方法

当然单例并不只有饿汉式和懒汉式两种方式,还可以使用枚举,静态内部类,双重检验锁的方式来实现

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013021928/article/details/46780495
个人分类: Java
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭