单例模式

原创 2013年12月04日 20:29:45




(1)  /* 线程安全 但效率比较低  一开始就要加载类new一个 对象 这是饿汉方式的单例模式*/  

  public class Singleton1 { 

       private Singleton1(){  }   

       private static final Singleton1 instance=new Singleton1();  

       public static Singleton1 getInstancei(){   

            return instance;  

       } 

  } 

 

 

(2)// 饱汉(懒汉)方式的单例模式 但是有多个线程访问时就不是安全的 返回的不是同一个对   象

   public class Singleton {  

        private Singleton(){  }   

        private static Singleton instance;  

        public static Singleton getInstance() {   

                 if (instance == null)     

                      instance = new Singleton();    

                  return instance;   

         }  

   } 

 

(3)  //虽然是安全的 但是效率非常低在一个时候只有一个线程能访问  同时返回一个对象  

   public class Singleton2 {  

     private Singleton2(){  }   

     private static Singleton2 instance;   

     public static synchronized Singleton2 getInstance() {     

     if (instance == null)    

         instance = new Singleton2();   

     return instance; 

 }    

   } 

 

 

 

(4)  /* 线程安全  并且效率高  能有多个线程访问*/ 

public class Singleton3 { 

    private static Singleton3 instance; 

    private Singleton3() {  }   

    public static Singleton3 getIstance() {  

        if (instance == null) {    

               synchronized (Singleton3.class) {    

                  if (instance == null) {       

                        instance = new Singleton3();    

                  }     

                }    

         }    

        return instance;  

    }  

}  

单例模式java代码

  • 2017年12月04日 19:46
  • 32KB
  • 下载

多种单例模式

  • 2017年11月30日 19:05
  • 3KB
  • 下载

java 单例模式的好处

http://blog.csdn.net/xiaolongyiqi/archive/2009/02/23/3928509.aspx http://crazyfeng.javaeye.com/blog...

单例模式

  • 2015年06月24日 10:08
  • 21KB
  • 下载

Android线程池+单例模式+webService

  • 2017年11月01日 10:36
  • 50.14MB
  • 下载

Dojo单例模式之防止TabContainer实例化多次

现在单例模式越来越成熟了,很多编程语言通过组件的一个属性就可以防止模块被实例化多次,然而处于朝阳期发展的Dojo来说,并没有对它的组件实现这一功能。所以,在某些情况下,我们必须要手动控制防止一个Wid...
  • shehun1
  • shehun1
  • 2012年08月10日 14:32
  • 2611

单例模式

  • 2013年11月14日 14:44
  • 24KB
  • 下载

单例模式详解

  • 2014年06月06日 00:14
  • 25KB
  • 下载

DCL双检测锁机制-实现单例模式的缺陷与改进

单例模式的实现方式: 1、静态内置类-实现单例模式(推荐) 2、DCL双检测锁机制-实现单例模式(缺陷:成员变量的初始化有多线程安全问题) 3、饿汉式初始化-实现单例模式 4、static代码块...
  • sinlff
  • sinlff
  • 2017年06月06日 10:31
  • 411

单例模式学习

  • 2013年01月06日 15:20
  • 3KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:单例模式
举报原因:
原因补充:

(最多只允许输入30个字)