java笔记-单例设计模式

解决一个类在内存中只存在一个对象

思路:

1)为了避免其它程序过多建立该类对象,先禁止其它程序建立该类对象

2)为了让其它程序可以访问到该类对象,只好在本类中自定义一个对象

3)为了方便其它程序对自定义对象的访问,可以对外提供一些访问方式

用代码体现的思路:

1)将构造函数私有化

2)在类中创建一个本类对象

3)提供一个方法可以获取到该对象


饿汉式单例设计模式

class Single{
   private int num;
   public void setNum(int num){
      this.num=num;
   }
   public int getNum(){
      return num;
   }
   private Single(){}
   private static Single s=new Single();
   public static Single getInstance(){
      return s;
   }
}
class SingleDemo{

 public static void main(String[] args){
     Single s=Single. getInstance();
  }

}


懒汉式设计模式

class Single{

   private static Single s=null;

   private single(){}

   public static Single getInstance(){

      if(s==null){

         synchronized(Single.class){
        if(s==null)
           s=new Single();
      }
  }

      return s;

   }

}
class SingleDemo{

 public static void main(String[] args){
     Single s=Single. getInstance();
  }

}

你可能感兴趣的:(java,java设计模式)