设计模式
介绍:通用问题的解决方案
分类:创建型模式,结构型模式,行为型模式
单例模式
介绍:一个类有且仅有一个实例,并且自动实例化向系统提供
分类:饿汉式,懒汉式
饿汉式
介绍:创建时进行初始化,速度快,内存占用高但是线程安全
public class Singleton {
//1、创建类中私有构造
private Singleton() {}
//2、创建该类型的私有静态实例 --此时进行创建
private static Singleton instance = new Singleton();
//3、创建公有静态方法返回静态实例对象
public static Singleton getInstance() {
return instance;
}
}
懒汉式
介绍:调用时进行初始化,速度慢,内存占用低但是线程存在风险
public class Singleton {
//1、创建类中私有构造
private Singleton() {}
//2、创建该类型的私有静态实例
private static Singleton instance = null;
//3、创建公有静态方法返回静态实例对象 --此时进行创建
public static Singleton getInstance() {
if(instance == null) {
instance = new Singleton();
}
return instance;
}
}