<span style="font-size:18px;">/*
多线程下的单例
*/
//饿汉式
class Single1
{
private static final Single1 s = new Single1();
private Single1(){}//私有化构造函数,防止直接创建对象
public static Single1 getInstance()
{
return s;
}
}
//懒汉式
//加入同步为了解决多线程安全问题。
//加入双重判断是为了解决效率问题。
class Single2
{
private static Single2 s = null;
private Single2(){}
public static Single2 getInstance()
{
if(s==null)
{
synchronized(Single2.class)
{
if(s==null)
s = new Single2();
}
}
return s;
}
}
class SingleDemo
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
</span>
java 多线程下的单例
最新推荐文章于 2024-02-10 12:14:44 发布