现在的位置: 首页 > 综合 > 正文

Singleton单例模式

2012年06月27日 ⁄ 综合 ⁄ 共 686字 ⁄ 字号 评论关闭

怎么让一个类生成惟一的实例?

在讲构造方法的时候提到过,我们在创建一个实例的时候构造方法一定会被调用的,不管这个类有几个构造方法,其中的一个构造方法一定会被调用。

因为构造方法一定会被调用,所以我们考虑从构造方法来入手。

假如说我们提供私有的构造方法,私有的构造方法,只有类自己可以访问。

 

public class SingletonTest {

    public void static main(String[] args){
        Singleton s = new Singleton();/*这里编译会报错,因为在SingletonTest类里面访问不到Singleton的私有构造方法。*/

    }
}

class Singleton {
    private Singleton(){

     }
}

所以采用下面的形式来获得单例:

 

public class SingletonTest {

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

class Singleton {

    private static Singleton  instance =           new      Singleton();
    private Singleton(){

     }

   public static Singleton getInstance(){
       return instance;
   }
}

 

 

抱歉!评论已关闭.