欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

第三章 单例模式 博客分类: J2EEJava基础Java设计模式  

程序员文章站 2024-03-24 21:03:34
...

3.1单例(Singleton)模式
  保证一个类仅有一个实例,并提供一个访问它的全局访问点。

3.2单例模式-概述

单件模式是关于怎样设计一个类,并使得该类只有一个实例的成熟模式,该模式的关键是将类的构造方法设置为private权限,并提供一个返回它的唯一实例的类方法。

3.3结构

包括一个角色:单件类(Singleton)


第三章 单例模式
            
    
    博客分类: J2EEJava基础Java设计模式  

3.4使用

public class Moon{
      private static Moon  uniqueMoon;
      double radius;
      double distanceToEarth;
      private Moon(){
           uniqueMoon=this;
           radius=1738;
           distanceToEarth=363300;
      }     
      public static synchronized Moon getMoon(){   
            if(uniqueMoon==null){
                  uniqueMoon=new Moon();
            }
            return uniqueMoon;
      }
      public String show(){
           String s="月亮的半径是"+radius+"km,距地球是"+distanceToEarth+"km";
           return s;
      }
}

 3.5单例模式-什么时候使用

  • 必要条件
    在一个系统中要求一个类只需要一个实例时才可以被用来作为单例模式,反过来说如果一个类需要多个实例化对象共存那么就不适合单例模式
    回收站是单例模式的体现

3.6单例模式-优点

  • 单件类的唯一实例由单件类本身来控制,所以可以很好地控制用户何时访问它。
  • 节省内存资源
     
  • 第三章 单例模式
            
    
    博客分类: J2EEJava基础Java设计模式  
  • 大小: 15.8 KB