延迟加载的单例设计模式。
单例设计模式呢,有两种了 ,一个是懒汉式,一个饿汉式。那么先说下两者的区别:
1 懒汉式的特点在于实例的延迟加载。
2 然而在多线程时又会出现安全问题。
3 当然了,用加同步来解决。而加同步的方式是用同步代码块。但稍微有些低效。
4 用双重判断的形式能够解决这个问题,
5 加同步时使用的锁是该类所属的字节码文件对象。
代码:
class Test5
{
private static Test5 s=null;
private Test5(){}
public static void main(String[] args)
{
if(s==null)
{
synchronized(Test5.class)
{
if(s==null) s=new Test5();
}
System.out.print(s);
}
}
}
---------------ASP.Net+Android+IOS开发、.Net培训、期待与您交流! -----------