单例模式——懒汉式的改进
在之前的单例模式中,懒汉式存在线程不安全的情况,在本篇中加以改进。
/**
* 使用同步机制将单例模式中的懒汉式改写成线程安全的
*/
public class BankTest {
}
class Bank{
private Bank(){
}
public static Bank bank = null;
//Object o = new Object();
public static Bank getInstance(){
//方法一:效率稍差
/*synchronized(Bank.class){
if(bank == null){
bank = new Bank();
}
return bank;
}*/
//效率更高
if(bank == null){
synchronized(Bank.class){
if(bank == null){
bank = new Bank();
}
}
}
return bank;
}
}