`

一个简单的Singleton

 
阅读更多

下面是一个

 

package com.seimma.singleton;

public class Singleton {
 //使用一个静态常量缓存曾经创建的实例
    private static Singleton instance;
    //将构造器修饰符改成private,隐藏该构造器,创建Singleton对象只能通过实例创建。
    private Singleton(){
    }
    //提供一个静态方法用于获得Singleton实例
    public static Singleton getInstance(){
     //如果instance为null表明还未创建Singleton实例
     if(instance==null){
      instance=new Singleton();   //创建Singleton实例并将缓存起来
     }
     return instance;    //如果instance不为null,直接返回Singleton实例
    }
}

 

 

package com.seimma.singleton;

public class Test {

 public static void main(String[] args) {
  //创建Singleton不能通过构造器,只能通过实例创建
        Singleton sing1=Singleton.getInstance();
        Singleton sing2=Singleton.getInstance();
        //使用==号判断两个引用类型时,必须保证两个引用类型指定的是同一个对象才返回true
        System.out.println(sing1==sing2);
 }
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics