标准库中单例设计模式实现的示例

时间:2013-10-22 20:33:15

标签: singleton

我在java源代码或其他标准库中搜索单例设计模式实现(双重检查锁定,枚举等)的示例。我想检查常用库采用哪种方法/方法。请建议一些实现单例设计模式的类/库。

1 个答案:

答案 0 :(得分:1)

//在java中实现单例类的最佳方法
包com.vsspl.test1;

class STest {

    private static STest ob= null;
    private  STest(){
        System.out.println("private constructor");
    }

    public static STest  create(){

        if(ob==null)
            ob = new STest();
        return ob;
    }

    public  Object  clone(){
        STest   obb = create();
        return obb;
    }
}

public class SingletonTest {
    public static void main(String[] args)  {
        STest  ob1 = STest.create();
        STest  ob2 = STest.create();
        STest  ob3 = STest.create();

        System.out.println("obj1  " +  ob1.hashCode());
        System.out.println("obj2  " +  ob2.hashCode());
        System.out.println("obj3  " +  ob3.hashCode());


        STest  ob4 = (STest) ob3.clone();
        STest  ob5 = (STest) ob2.clone();
        System.out.println("obj4  " +  ob4.hashCode());
        System.out.println("obj5  " +  ob5.hashCode());

    }
}