@OverWrite BlogJava

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  128 随笔 :: 0 文章 :: 29 评论 :: 0 Trackbacks
    需求:一方面要求某类只能存在单一的对象实例(从概念上来说,就是一组静态方法和字段),另一方面又要求该实例的使用与普通对象一样,单例模式就是这两个要求之间的平衡。
    单例模式通过使用私有构造函数保证了一个类只能存在一个实例,类中的某个静态方法用于返回类的唯一实例。以下的Widget类就是一个单例:
public class Widget{
    
private static Widget instance = new Widget();
    
public static Widget getInstance(){
       
return instance;
    }

    
private Widget(){}
    
public int doSomething(){
        
// 
    }

}
  Widget的构造函数是私有的,这以为着只有静态方法getInstance()能够创建Widget对象。由于instance字段是静态的,所以它被定义为唯一的实例。第一次调用getInstance()方法创建一个新的Widget对象实例,而后续所有的调用都将会返回这唯一的对象实例。
  单例模式可以去掉不必要的对象创建过程。
posted on 2008-02-29 16:52 vesung 阅读(344) 评论(1)  编辑  收藏 所属分类: Java设计模式

评论

# re: 单例模式 2008-03-04 21:15 Wang
Java的垃圾收集就是好啊。在C++里实现单件要考虑的太多了……  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: