---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------
package demo;
/*单例模式:解决一个类在内存只存在一个对象。
* 1、饿汉式*/
/*class Single
{
private Single(){}
private final static Single s = new Single();
public static Single getInstance()
{
return s;
}
}
class SingleDemo
{
public static void main(String[] args)
{
Single ss = Single.getInstance();
}
}*/
/*
2、懒汉式:对象被调用时才初始化,也叫对象延时加载,称为:饿汉式。
实际应用中,饿汉式要用多线程的方式解决问题。
然而多线程方式需要用到同步代码块,犹豫synchorized语句需要判断锁,所以降低了代码执行效率。
我们采用多重判断提高代码执行效率。
*/
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 SingleDemo
{
public static void main (String[] args)
{
Single ss = Single.getInstance();
}
}
---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------