1.单例模式的作用
单例模式保证某个类只有一个实例,而且自行实例化并向整个系统提供这个实例;
2.单例模式的特点:
(1)单例类只能有一个实例;
(2)单例类必须自己创建自己唯一实例;
(3)单例类必须给所有其他对象提供这一实例;
3.单例模式的用途
一般用于线程池、缓存、日志对象、对话框、驱动程序等;
4.单例模式的实现
4.单例模式的实现
public class Singleton {
private static Singleton ourInstance;
public synchronized static Singleton getInstance() {
if (null == ourInstance) {
ourInstance = new Singleton();
}
return ourInstance;
}
private Singleton() {}
}
步骤:
(1)声明类的实例化对象;
(2)设计获得实例化对象的方法(getInstance);
(3)判断对象是否在内存空间中存在;
(4)如果不存在,新建一个对象,并返回该对象;
(5)如果存在,则返回对象;
(加锁是为了保证线程安全,不发生抢占事件)