---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Android+IOS开发</a>、<a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流! ----------------------
刚学到此处的时候,发现很多地方都有用到,并且java开发必须会的内容。总结了一下:
单例设计模式:解决一个类在内存中只存在一个对象,保证对象唯一。
1、为了避免其他程序过多建立对象,先禁止其他程序建立该类对象。
2、为了让其它程序可以访问该类对象,只好在本类中自定义一个对象。下面为实现方法:
//恶汉式
class Single
{
private static final Single s=new Single();
private Single(){};
private static Single getInstance()
{
return s;
}
}
//懒汉式
{
private static Single s=null;
private Single(){};
private static Single getInatance()
{
if (s==null)
s=new Single;
return s;
}
}
& 饿汉式:Single类一进内存,就创建对象
&懒汉式:Single类进内存,对象还没有存在,只有调用了getInstance方法时,才建立对象。开发一般使用饿汉式,但懒汉式有弊端。
实例延时加载,加同步(双重判断效率),使用锁为该类所属字节码文件。
class
{
private static Single=null;
private Single(){};
private static Single getInstance()
{
if (s==null)
{
synchronized(Single.class)
{
if (s==null)
s=new Single();
}
}
return s;
}
}
---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Android+IOS开发</a>、<a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流! ----------------------