单例模式
- 通过单例模式可以保证项目中,应用该模式的这个类只有一个实例, 即一个类只有一个对象实例
- 好处 :可以节省内存,共享数据
// 饿汉式单例模式
public class King {
// 1 构造方法私有化
private King() {
}
// 2 在该类的内部产生一个唯一的实例化对象 并将其封装成 private static 类型的成员变量
private static final King KING = new King();
// 3 定义一个静态方法返回这个唯一对象
public static King getInstance() {
return KING;
}
}
// 懒汉式单例模式
public class King2 {
// 构造方法私有化
private King2() {
}
private static King2 king; // 不能用final修饰
public static synchronized King2 getInstance() { // synchronized 保证在多线程调用时创建的对象唯一
if (king == null) {
king = new King2();
}
return king;
}
}