单例模式 、懒汉式 vs 饿汉式

package test2;
/*
单例模式 懒汉式实现

单例模式举例:java.lang.Runtime()

l懒汉式 vs 饿汉式

饿汉式:
好处:线程安全
坏处:对象加载时间过长
懒汉式:
好处:延迟对象的创建
坏处:线程不安全---->目前写法
*/
public class SingletonTest2 {
//懒汉式
class Orser{
private Orser(){}

//声明当前类的对象,没有初始化
private static Orser instance = null;

public static Orser getInstance(){
if (instance == null){
instance = new Orser();
}
return instance;
}
}

//饿汉式
class Bank{
//私有化构造器
private Bank(){}
//内部创建类的对象
private static Bank instance = new Bank();

//提供公共的方法
public static Bank getInstance(){
return instance;
}

public static void main(String[] args) {
Orser o1 = Orser.getInstance();
Orser o2 = Orser.getInstance();
System.out.println(o1 == o2);
System.out.println(o1);
System.out.println(o2);
}
}


}
posted @ 2020-07-14 16:57  GuanErA  阅读(91)  评论(0)    收藏  举报