黑马程序员,延迟加载的单例设计模式

来源:互联网 发布:axure 8.0 for mac 编辑:程序博客网 时间:2024/04/30 12:34
android培训、java培训、期待与您交流!
单例设计模式:


*/
//饿汉式。
/*
class Single
{
private static final Single s = new Single();
private Single(){}
public static Single getInstance()
{
return s;
}
}
*/
//懒汉式,请给我写个延迟加载的单例设计模式。

/*
区别:
懒汉式特点是实例的延迟加载。多线程访问时回出现安全问题。
可以加同步来解决。可以用同步代码块或者同步函数。有些低效,
用双重判断可以效率问题。同步的时候,用的锁是,该类所属的字节码文件对象。
*/
class Single
{
private static Single s = null;
private Single(){}
public static Single getInstance()
{
if(s==null)
{
synchronized(Single.class)
{
if (s==null)
{
s = new Single();
}
}
}
return s;
}
}
class SingleDmeo
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}

}


android培训、java培训、期待与您交流!


原创粉丝点击