黑马程序员技术交流社区

标题: 单例设计模式 [打印本页]

作者: 海中的游弋草    时间: 2011-12-20 23:19
标题: 单例设计模式
本帖最后由 海中的游弋草 于 2011-12-20 23:40 编辑

什么是单例设计模式?为什么要用单例设计模式?什么情况下使用?
作者: 黄达标    时间: 2011-12-20 23:32
单例设计模式:解决一个类在内存只存在一个对象的问题。
单列设计模式有两种方式:懒汉式:对象是方法被调用时,才初始化,也叫做对象的延时加载。
                        饿汉式:是先初始化对象。通常实用饿汉式。
为什么要用单例设计模式:为了要保证对象唯一
步骤:
1,为了避免其他程序过多建立该类对象。先禁止其他程序建立该类对象
2,还为了让其他程序可以访问到该类对象,只好在本类中,自定义一个对象。
3,为了方便其他程序对自定义对象的访问,可以对外提供一些访问方式。
作者: 郭繁森    时间: 2011-12-20 23:38
本帖最后由 郭繁森 于 2012-2-22 19:27 编辑

单例模式:一个类在应用程序中只有一个实例,要做到这一点,必须不能让类的使用者轻易把类new出来,因为new Object() 一次就产生一个实例。所以类的构造方法必须是private的。接下来单例类就必须提供一个访问器(get方法)获得单例类的实例。下面有个例子:
public class Singleton{

  private static Singleton instance;
   
  static{
  instance = new Singleton()//在类加载时,就生成他的实例
  }

  //防止类的使用者new Singleton()
  private Singleton (){}

  //Singleton 类的访问器,可以通过这个方法获得类的实例
  public static Singleton getInstance(){
  return instance ;
  }
}

详情链接:http://www.iteye.com/topic/60179




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2