单例模式

目的:解决一个类在内存中只存在一个对象的问题。

方法:

1、为了实现只有一个对象,就必须禁止其他程序建立对象。

2、为了让其他程序访问到类对象,在本类中定义一个对象。

3、为了使其他程序对自定义对象访问,可以对外提供访问方式。

步骤:

1、将构造函数私有化

2、创建一个本类对象。

3、提供一个方法可以获取本类对象。

/**
饿汉式
*/
class Single
{
	private static Single s=new Single();
	private Single(){};
	public Single getInstance()
	{
		return this.s;
	}
}

/**
懒汉式
*/

class Single
{
	private static Single s=null;
	private Single(){}
	public static Single synchronized getInstance()
	{
		if(this.s==null)
		{
			this.s=new Single(0;
		}
		return this.s;
	}
}

/**
懒汉式
*/

class Single
{
	private static Single s=null;
	private Single(){}
	public static Single getInstance()
	{
		if(this.s==null)
		{
			synchronized(Single.class)
			{
				if(s==null)
				{
					s=new Single();
				}
			}
			this.s=new Single(0;
		}
		return this.s;
	}

}


原文地址:https://www.cnblogs.com/dengshiwei/p/4258567.html