码迷,mamicode.com
首页 > 其他好文 > 详细

单例模式

时间:2014-05-22 04:10:21      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:class   c   a   get      new   

//单例模式的三个条件
//1.构造器私有的
//2.在自己内部定义自己一个实例,注意是private的,只供内部调用
//3.对外提供一个static方法,获取当前类的对象

public class Singleton {
  //懒汉模式,线程不安全
  private Singleton(){}
  private static Singleton instance;
  public static Singleton getInstance(){
    if(instance == null){
      instance = new Singleton();
    }
    return instance;
  }
}

//懒汉模式,线程安全,但多线程时效率很低
class Singleton2{
  private Singleton2(){}
  private static Singleton2 instance;
  public static synchronized Singleton2 getInstance(){
    if(instance==null){
      instance = new Singleton2();
    }
    return instance;
  }
}
//饿汉模式
class Singleton3{
  private Singleton3(){}
  private static Singleton3 instance = new Singleton3();
  public static Singleton3 getInstance(){
    return instance;
  }
}

单例模式,布布扣,bubuko.com

单例模式

标签:class   c   a   get      new   

原文地址:http://www.cnblogs.com/hugo-guo/p/3738519.html

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