单例模式
单例模式概念
我们平常每次想要获得一个对象的时候是不是直接new
一个类就行了,甚至想创建几个就能创建几个相同的对象,但这样的话我们多次去创建相同的这个类的对象终归不太好。为了避免过多的去访问相同的一个类,单例模式就应运而生了。
啥叫单例模式
呢?简单来说就是一个类只能创建一个对象
,也是属于创建模式。在代码层面上讲就是构造器私有化(private)
,我们无法通过构造器去创建对象,只能够通过该类中提供的一个方法
来进行获取该类的对象。在调用这个方法的过程中,如果我们原来没有这个类的对象就返回这个类的对象,如果我们有这个类的对象的话就不在新建对象,而是把我们之前的对象
返回给我们。
单例模式的设计原理图
单例模式代码分析
1、懒汉式
- 要创建对象的类
public class SimpleInstance {
//成员方法用于用于生成要创建的对象
private static SimpleInstance instancesOf = null;
//私有构造器
private SimpleInstance(){
}
//public公共的方法,用于外界的访问创建对象
public static SimpleInstance getInstances(){
if (instancesOf == null){
instancesOf = new SimpleInstance();
}
return instancesOf;
}
}
- 测试类
public class SimpleInstanceTest {
public