单例模式:确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。
public class Singleton {
//线程安全
// private static Singleton singleton = new Singleton();
// private Singleton(){}
// public static Singleton getInstance(){
// return singleton;
// }
//线程不安全
// private static Singleton singleton = null;
// private Singleton(){}
// public static Singleton getInstance(){
// if (singleton==null){
// singleton = new Singleton();
// }
// return singleton;
// }
//双重校验锁
private static volatile Singleton singleton = null;
private Singleton(){}
public static Singleton getInstance(){
if(singleton==null){
synchronized (Singleton.class){
singleton = new Singleton();
}
}
return singleton;
}
public static void test(){
System.out.println("HelloWorld");
}
}