单例模式:确保一个类只有一个实例,并提供一个全局访问点。即多次new对象,只能获取同一个对象。
实现方式一:懒汉模式(线程不安全)
public class Singleton {
private static Singleton instance;
private Singleton() {}
public Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
实现方式二:饿汉模式(线程安全)
public class Singleton {
private static Singleton instance = new Singleton();
private Singleton() {}
public Singleton getInstance() {
return instance;
}
}
构造函数是私有的,外部不能直接创建对象,只能通过静态方法getInstance()方法获取对象。