单例模式
是设计模式的中的一种。所谓单例模式,就是就是整个系统中对象仅此一个,不会有重复的对象生成。
1. 懒汉式
顾名思义,就是比较懒,当你使用的我现场去创建对象。
// 单例对象
class SingleObject{
private static SingleObject instance;
//构造方法私有化
private SingleObject(){
System.out.println("我是 SingleObject 的构造方法");
}
public static SingleObject getInstance() {
if(instance==null) {
instance = new SingleObject();
return instance;
}
return instance;
}
}
2. 饿汉式
顾名思义,就是时刻保持警惕,一上来就把对象给你创建好,就等着你使用。
// 单例对象
class SingleObject{
private static SingleObject instance = new SingleObject();;
//构造方法私有化
private SingleObject(){
System.out.println("我是 SingleObject 的构造方法");
}
public static SingleObject getInstance() {
return instance;
}
}
注意:在单线程中 懒汉式 和 饿汉式 可以解决问题,但是在多线程的环境中,这么些是有问题的!