单例模式是指该类只能有一个实例,所以必须隐藏类的构造函数,对外只提供一个创建对象的方法,

public class MyClass {
    public static void main(String args[]) {
       Single s = Single.getSingle();
       // Single s = new Single();
       System.out.println(s);
       Single s1 = Single.getSingle();
       if(s == s1){
           System.out.println("yes");
       }
       noSingle ns = new noSingle();
       noSingle ns1 = new noSingle();
       if(ns == ns1){
           System.out.println("yes");
       }else{
           System.out.println("no");
       }
    }
}
class Single{
    private static Single s = null;
    private Single() {}
    public static Single getSingle(){
        if(s == null){
            s = new Single();
        }
        return s;
    }
    public String toString(){
        return "this is a single";
    }
}
class noSingle{
    
}

  执行结果:

this is a single
yes
no

注意:不能再成员函数内部定义static变量!!