单例模式
单例模式分懒汉模式和饿汉模式,懒汉模式现成不安全占用内存小,饿汉模式现成安全但占用一定的内存。以下是懒汉模式实现线程的方式,通过双重校验和synchronized 锁实现线程安全。这样既保证线程安全又使内存节省。
public class Singleton {
//volatile 解决线程出现不同结果问题
private static volatile Singleton singleton= null;
public Singleton(){ }
public static Singleton Singleton(){
if(singleton == null){
synchronized (Singleton.class){
if(singleton == null){
singleton = new Singleton();
}
}
}
return singleton;
}
}