一、什么是单例模式,为什么要使用单例模式?
单例模式是为了保证在对一个类进行操作的时候,在内存中每一次只产生一个类对象。
二、如何来实现单例模式呢?
1、需要将类的构造方法私有化
将类构造方法私有化可以使这个类在其它类调用的过程中不能通过new关键字来创建对象。
2、通过类本身来实例化一个本类对象
为什么要通过本类来实例化呢?这是为了保证在其他的类通过类对象操作这个类的时候,此类仅仅只有一个实例,也就是单一的类实例。为什么这个类实例需要加上static关键字呢?是为了保证此类在被JVM加载的时候就为其分配内存空间,做初始化工作。为什么要写上final关键字呢?关键字final作用在类属性上,证明此属性是一个不可以改变的,就相当于一个常量,能够保证在内存中只存在一份。 3、提供一个公有的方法返回一个本类的实例
为什么需要使用一个公有的方法来返回一个该类实例呢?
是因为外部其他的类在访问单例类时,不能通过new的方式构建单例类的实例了。