单例模式代码实现简单介绍

两种实现单例模式的方式:

//饿汉式

public class EagerSingleton 
{ 
     //一上来就创建实例,所以叫饿汉
      private static final EagerSingleton m_instance = new EagerSingleton(); 

      private EagerSingleton() { } 

      public static EagerSingleton getInstance() 
      {
        return m_instance; 
      }
}

//懒汉式

  

//懒汉式
public class LazySingleton 
{ 
  private static LazySingleton   m_instance = null; 

  private LazySingleton() { } 
 
  synchronized public static LazySingleton getInstance(){ 
  //实例为空的时候才创建,否者直接拿来用,所以是懒汉
  if (m_instance == null) 
  {
    m_instance = new LazySingleton(); 
  } 
  return m_instance; 
  }
}  

猜你喜欢

转载自rockydang.iteye.com/blog/1576270