Java单例模式&static成员变量 区别

当需要共享的变量很多时,使用static变量占用内存的时间过长,在类的整个生命周期。
而对象只是存在于对象的整个生命周期。
Java单例模式static成员变量 区别 - darrell - DARRELL的博客
 
 
//饿汉式
class Single//类一加载,对象就已经存在了。
{
private static Single s = new Single();
 
private Single(){}
 
public static Single getInstance()
{
return s;
}
}
 
//懒汉式    
class Single2//类加载进来,没有对象,只有调用了getInstance方法时,才会创建对象。
//延迟加载形式。 并发过程中存在安全隐患。
{
private static Single2 s = null;
 
private Single2(){}
 
public static Single2 getInstance()
{
if(s==null)
s = new Single2();
return s;
}
}
原文地址:https://www.cnblogs.com/xiarongjin/p/8306569.html