1 什么是单例?
单例就是,一个类只有一个对象
2 怎样创建饿汉单例
- 构造方法私有化
- 在类的内部创建该类对象(需要的时候才创建对象)
- 提供一个静态方法对外提供该类实例,而且,方法同步
代码搞起来!
public class Test {
//提供私有构造方法
private Test(){
}
//需要才,加载创建
private static Test instance = null;
public synchronized static Test getInstance(){
if (instance == null){
instance = new Test();
}
return instance;
}
}
3 饱汉单例
- 构造方法私有化
- 在类的内部创建该类对象(一开始就,创建对象)
- 提供一个静态方法对外提供该类实例
public class Test {
//提供私有构造方法
private Test(){
}
//一出来,就加载创建
private static Test instance = new Test();
public static Test getInstance(){
return instance;
}
}