核心
保证一个类在内存中对象的唯一性。
那么如何保证类的对象在内存中唯一呢
1.我们都知道,在创建对象的时候,都要对构造函数初始化;只要将构造函数私有化,那么其他程序中就无法创建该类的对象。
2.在该类中创建私有的、静态的该类的对象。
3.再写一个公有的、静态的方法,返回该类的对象,供其他程序的调用。这样就可以确保类在内存中对象的唯一性。
代码:
1.饿汉式
public class Single
{
//构造函数私有化
private Single()
{
}
//创建私有、静态的本类对象。
private static Single single = new Single();
//定义公有并静态的方法,返回该对象。
public static Single getInstance()
{
return single;
}
}
2.懒汉式
public class Single
{
//构造函数私有化
private Single()
{
}
//创建私有、静态的本类对象。
private static Single single = null;
//定义公有、静态的方法,返回该对象。
public static Single getInstance()
{
if(null==single)
{
single = new Single();
}
return single;
}
}