码迷,mamicode.com
首页 > 编程语言 > 详细

java单例模式

时间:2015-10-29 00:42:52      阅读:259      评论:0      收藏:0      [点我收藏+]

标签:

java单例模式实现一个类只有一个实例的特性。

实现方式:饿汉式很简单就不阐述了。下面介绍下懒汉式。

  1. 构造器私有化
  2. 静态方法获取实例,方法内double-check-locking检查。不建议同步方法。
public class Singleton {
    private static Singleton singleton;

    private Singleton(){}

    public static Singleton getInstance() {
        if (singleton == null) {
//            try {
//                Thread.sleep(1000);
//            } catch (InterruptedException e) {
//                e.printStackTrace();
//            }
            synchronized (Singleton.class) {
                if (singleton == null) {
                    singleton = new Singleton();
                }
            }
        }
        return singleton;
    }
}

  上面注释的代码是为了在没有同步块和二次检查的时候,让单例模式失效的几率变大。测试代码就不写了。

java单例模式

标签:

原文地址:http://www.cnblogs.com/zhufengxiang/p/4919055.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!