java 单例模式

单例模式:一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,也叫“单子模式”,属于创建模式。

单例类有一个最重要的特点:类的构造方法是私有的(避免了外部利用构造方法直接创建多个实例)。

java中单例模式是一种常见的设计模式,单例模式分为3种:懒汉式单例,饿汉式单例,登记式单例。

(1)饿汉式:类被加载时,自行实例化 。    

package singleton;
//饿汉式单例
public class Singleton1 {
    
   private static Singleton1 instance=new Singleton1();
   private Singleton1(){
       
   }
   public static Singleton1 getInstance(){
       return instance;
   }
  
}

(2)懒汉式:与饿汉式不同的是,在第一次调用的时候实例化。

package singleton;
//懒汉式单例
public class Singleton {
    private static Singleton instance;
    private Singleton(){}
    public synchronized static Singleton getInstance(){
    	if (instance==null) {
			instance=new Singleton();
		}
    	return instance;
    }    
}

总之,我们接触到的单例模式多用在数据库连接池,struts的action管理中。

  

 

 

 

posted @ 2012-09-22 19:22  Felicite  阅读(197)  评论(0)    收藏  举报