懒汉式单例
//懒汉式单例:一次调用初始化,避免内存浪费,必须枷锁才能保持单例
private static Single single;
private Single(){};
public static synchronized Single getInstance() {
if (single == null) {
single = new Single();
}
return single;
}
//饿汉式:没有加锁,执行效率高。类加载时候就初始化,内存浪费。
private static final Single single=new Single();
private Single(){}
public static Single getSingle(){
return single;
}
在整个应用生命周期内,对某个类,只实例化一次,应用场景为:连接数据库,记录日志,使用单例模式可以避免不必要的资源消耗