【设计模式】单例设计模式的懒汉式和饿汉式

what 单例模式是什么?
1.采取一定的方法保证整个软件系统中,对某个类只能存在一个对象实例。(类只能有一个对象)(比如,jdbc的连接池)

how?如何实现
饿汉式:
1.构造器私有化
2.内部创建类的对象。 private Bank instance = new Bank()
3.提供公共方法,返回类的对象。
public static Bank getInstance(){
return instance;
}

懒汉式(什么时候用,什么时候造):
1.同上1
2.声明对象 private Bank instance = null;
3.提供公共的获取对象方法
public static Bank getInstance(){
if(instance == null){
instance = new Bank();
}
return instance;
}

对比:
1.懒汉式比较好,因为可以延迟对象的创建,节省内存和加载时间,
2.饿汉式比较好,因为线程安全,当两个线程获取懒汉式的获取对象方法时,都instance == null,那么机会创建两个对象

应用场景
【设计模式】单例设计模式的懒汉式和饿汉式